먼저 아파치를 다운로드 하자!
https://devdebin.tistory.com/124
이번에는 MySQL 소스 설치를 진행해보겠다.
저번 시간과 마찬가지로 먼저 필수적인 패키지를 다운로드 받는다.
& sudo su
/usr/local# apt-get update
/usr/local# apt-get install cmake
/usr/local# apt-get install libssl-dev
/usr/local# apt-get install libboost-all-dev
/usr/local# apt-get install libncurses5-dev libncursesw5-dev
/usr/local# apt-get install perl
/usr/local# apt-get install make
/usr/local# apt-get install gcc
/usr/local# apt-get install g++
위 패키지는 저번 시간에 인스톨했다.
이번에도 저번 시간과 동일하게 MySQL 소스 파일을 받고 압축을 해제한다.
/usr/local# wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.19.tar.gz
/usr/local# tar xvfz mysql-8.0.19.tar.gz
MySQL 설치
이제 디렉토리를 생성하고 그 디렉토리 안에서 설치를 진행한다.
/usr/local# cd mysql-8.0.19
/usr/local/mysql-8.0.19# mkdir dir_mysql (이름은 아무거나 상관없다)
/usr/local/mysql-8.0.19# cd dir_mysql
/usr/local/mysql-8.0.19/dir_mysql# cmake \
.. \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DSYSCONFDIR=/etc \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=/usr/local/mysql/boost
여기서 스페이스바를 자꾸 잘못 눌러 에러가 발생했다. 정확히 타이핑하고 엔터를 눌렀는데...!!!!
또 다른 에러가 발생했다.
CMake Error at cmake/boost.cmake:229
wget, curl을 이용해 위 링크의 소스를 다운받고 압축을 풀라고 에러 메시지에 나왔다.
따라서 저 링크로 접근해 wget 명령어로 다운을 받으려고 했는데 접근 권한이 없다면서 실패했다.
이후에 구글링을 통해서 동일한 버전의 다른 링크를 얻어 다운로드를 진행했다.
- /usr/local/mysql/boost 로 이동
- wget http://downloads.sourceforge.net/project/boost/boost/1.70.0/boost_1_70_0.tar.gz
- tar xvfz boost_1_70_0.tar.gz
압축을 해제하고 다시 위의 cmake ~ 명령어를 입력하면 정상적으로 진행된다.
이제 아래와 같이 명령어를 입력한다.
/usr/local/mysql-8.0.19/dir_mysql# make
/usr/local/mysql-8.0.19/dir_mysql# make install
make 명령어는 정말 오래걸리므로 인내심을 가지고 기다리자
MySQL DB 초기화
1. mysql 그룹 및 유저 생성
/usr/local/mysql-8.0.19/dir_mysql# groupadd mysql
/usr/local/mysql-8.0.19/dir_mysql# useradd -r -g mysql -s /bin/false mysql
2. 디렉토리 생성
/usr/local# cd mysql
/usr/local/mysql# mkdir mysql-files (이름 아무거나 상관없음)
3. 권한주기
/usr/local/mysql# chown -R mysql:mysql /usr/local/mysql
/usr/local/mysql# chown mysql:mysql mysql-files
/usr/local/mysql# chmod 750 mysql-files
4. 기본 DB 생성
/usr/local/mysql# bin/mysqld --initialize --user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data
이 과정을 마무리하면 아래와 같이 임시 비밀번호가 나온다.
A temporary password is generated for .. 를 통해 임시 비밀번호가 생긴 것을 확인할 수 있다.
MySQL 서버 실행 및 비밀번호 변경
1. MySQL 서버 실행
/usr/local/mysql# bin/mysqld_safe --user=mysql &
이때, 여기서 바로 명령어를 입력하고 임시 비밀번호를 입력하면 mysql에 접속 성공!!
#bin/mysql -u root -p
#Enter password: 비밀번호 입력 (임시 비밀번호)
아래 이미지처럼 성공이다!! 정말 오랜 시간이 걸렸다...
마지막으로 비밀번호를 재설정하고 서버 종료 하는 법은 아래와 같다.
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'root-password';
mysql> exit
/usr/local/mysql# bin/mysqladmin -u root -p shutdown
이렇게 이번 실습도 마무리..!!!!
참고 자료
댓글