본문 바로가기
서버세션/Server

[Ubuntu 18.0.4] APM 소스 설치 - MySQL 8.0.19 (수동 설치, 컴파일 설치)

by 김긍수 2021. 4. 13.
  1. Apache 2.4 설치
  2. MySQL 8.0.19 설치
  3. PHP 7.4.1 설치

MySQL 8.0.19v 소스설치 (수동설치)

1. 필수적인 의존성 패키지 설치

$ dpkg -l | grep [이름] 으로 설치가 되었는지, 안되었는지 확인할 수 있다. : apt-get xxx 만 확인가능

$ apt-get update

//1) CMake 
apt-get install cmake
//2) GNU make 3.75이상
apt-get install make
//3) GCC 5.3 이상
apt-get install gcc
//4) C++ | C99 컴파일러
//5) SSL 라이브러리
apt-get install libssl-dev
//6) Boost C++라이브러리
apt-get install libboost-all-dev
//7) ncurses 라이브러리
apt-get install libncurses5-dev libncursesw5-dev
//8) Perl
//아파치에서 설치함.

//libxml2-dev curl libcurl4-openssl-dev libjpeg-dev libpng-dev libfreetype6-dev libsasl2-dev autoconf

2. MY SQL 8.0.19 다운로드

$ cd /usr/local
$ wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.19.tar.gz
$ tar xvfz mysql-8.0.19.tar.gz

1. /usr/local 경로로 이동한다.

2. tar.gz파일을 다운받아 압축 해제한다.

3. MYSQL 설치

$ cd mysql-8.0.19
$ rm -f CMakeCache.txt
$ mkdir 파일이름(마음대로)
$ cd 파일이름(마음대로)
//설치 옵션 부여
cmake \
.. \
//설치 디렉토리 설정
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
//mysql data 디렉토리 설정
-DMYSQL_DATADIR=/usr/local/mysql/data \
//서버가 소켓연결을 listen할때사용, 소켓파일경로
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
//서버 TCP/IP 연결 포트번호
-DMYSQL_TCP_PORT=3306 \ 
//서버 문자세트
-DDEFAULT_CHARSET=utf8 \ 
//서버데이터 정렬
-DDEFAULT_COLLATION=utf8_general_ci \ 
//mycnf옵션 파일의 디렉토리설정
-DSYSCONFDIR=/etc \ 
//추가 지원 언어
-DWITH_EXTRA_CHARSETS=all \ 

-DWITH_INNOBASE_STORAGE_ENGINE=1 \ 
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DDOWNLOAD_BOOST=1 \
//boost파일이 있는 위치를 빌드 시스템에 알림
-DWITH_BOOST=/usr/local/mysql/boost 

$ make
$ make test
$ make install

- make 실행하는 시간이 정말 길다. 나는 4시간넘게 걸린 것 같은데 아무튼 엄청 많이 걸린다. 

4. 데이터베이스 초기화

1) 그룹과 유저 생성

//mysql이라는 그룹을 지어 관리
$ groupadd mysql
//사용자 추가 useradd -r:시스템계정 -g:그룹지정 -s:로그인 쉘 지정 + :mysql은 사용자이름
useradd –r –g mysql –s /bin/false mysql

2) 그룹조회, 사용자목록 조회

$ groups
$ cat /etc/passwd

 

3) 디렉토리 생성

$ cd /usr/local/mysql 
$ mkdir mysql-files

4) 디렉토리 사용자 및 그룹 소유권을 mysql 사용자 및 그룹에 부여하고 디렉토리 권한 설정(mysql)

//파일소유권자를 변경하는 명령어 chown(-R:하위디렉토리까지)
$ chown -R mysql:mysql /usr/local/mysql

//chown 소유권자:그룹식별자 소유권을 변경하고 싶은 파일명
$ chown mysql:mysql mysql-files 

// 750 : 7진수로 소유권권한을 부여한다. 750 = 소유자권한(rwe), 그룹권한(re), 전체권한(없음)
$ chmod 750 mysql-files

5) 기본 데이터베이스 생성

$ bin/mysqld --initialize --user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data

이미지는 잘렸지만....

root@localhost: iz+dsdsewds

이런 식으로 임시 비밀번호가 출력된다. 반드시 놓치면 안된다.

 

 

 

6) root 계정 암호 초기화

$ bin/mysqld_safe --user=mysql &
$ ps -ef | grep mysqld

- 백그라운드에서 mysql 서버 실행

- MySQL이 실행되고 있는지 확인할 수 있다.

bin/mysql –u root –p

 

– 아까 기억한 임시비밀빈허로 접속하면 mysql 서버로 접속된다.

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '변경하고 싶은 비밀번호';

- root의 비밀번호를 변경한다.

- mysql에서 exit하면 빠져나올 수 있다.

$ bin/mysqladmin -u root -p shutdown

- shutdown 명령어를 통해 서버를 종료할 수 있다.

 

 

 

 

 

 

 

 

 

참고

salix97.tistory.com/141?category=837576

https://happylulurara.tistory.com/139?category=791087

alkhwa-113.tistory.com/entry/Ubuntu-1804-%EC%97%90-MySQL-8021-%EC%88%98%EB%8F%99%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0?category=882877

댓글