[MySQL] 1. CentOS7에 MySQL8.0 Community Server 설치하기

2020. 1. 28. 18:12DB/MySQL

반응형

CentOS7에 MySQL Community Server 8.0 버전을 설치해 봅시다.

  1. MySQL rpm 패키지 링크 가져오기
  2. yum localinstall 명령어로 MySQL rpm 패키지 설치
  3. mysql-community-server 설치
  4. my.cnf (MySQL 기본 설정)
  5. MySQL 서버 시작

1. MySQL rpm 패키지 링크 가져오기

CentOS7의 yum에 MySQL 관련 repository를 구축하기 위해 rpm 패키지를 다운받습니다.

먼저 MySQL Download 페이지를 열고 운영체제 및 버전을 선택합니다.

06

설치 방법 중 yum을 이용한 설치 방법을 선택합니다. (위의 페이지에서 Download Now >> 링크를 누릅니다.)


07

설치할 서버의 운영체제 버전에 맞게 Download 버튼을 누르면 되는데, 제 CentOS 서버는 7.6버전이기 때문에 두번째 항목을 클릭했습니다.

08

위의 페이지에서 링크 주소를 복사하여 rpm 패키지 설치를 하면됩니다.


2. yum localinstall 명령어로 MySQL rpm 패키지 설치

yum localinstall 명령어로 rpm 파일을 이용하여 repository를 구성합니다.

sudo yum localinstall https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
[jini@apple ~]$ yum repolist enabled | grep "mysql.*-community.*"
mysql-connectors-community/x86_64  MySQL Connectors Community    enabled:    141
mysql-tools-community/x86_64       MySQL Tools Community         enabled:    105
mysql80-community/x86_64           MySQL 8.0 Community Server    enabled:    161

rpm 파일이 정상적으로 설치되었을 경우 yum repolist 명령어로 yum repository 목록에 mysql 관련 항목이 함께 출력될 것입니다.

이제 mysql 서버 설치를 위해 필요한 repository 구성이 완료 되었으니 yum 명령어로 mysql 서버를 설치합니다.


3. mysql-community-server 설치

sudo yum install mysql-community-server

yum install 명령어로 mysql-community-server 를 설치합니다.


4. my.cnf (MySQL 기본 설정)

영구적으로 적용할 mysql 속성을 my.cnf 파일에 설정합니다.
my.cnf 에 속성을 정의했을 시, mysql db 서버가 재시작 되어도 설정된 속성값이 유지됩니다.

sudo vim /etc/my.cnf
[mysqld]

...

character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
skip-character-set-client-handshake

log_bin_trust_function_creators=1

ln 5~8 : chracter set을 설정합니다. utf8mb4를 😲👌💳 등의 이모지도 db의 레코드에 담을 수 있습니다.
(만약 이모지를 사용하지 않는다면, character-set-server=utf8, collation-server=utf8_unicode_ci로 설정하면 됩니다.)

ln 9 : stored function 생성 허용


만일 mysql_native_password 를 이용하고 싶다면 아래의 옵션을 추가하면 됩니다.
MySQL 8 버전에서 기본 encoding 방식은 caching_sha2_password 입니다.

default_authentication_plugin=mysql_native_password

5. MySQL 서버 시작

sudo systemctl start mysqld

위의 명령어를 이용하여 mysql 서버를 시작합니다.
mysql 서비스를 시작하면 root의 임시 비밀번호가 /var/log/mysqld.log에 기록됩니다.

09

위의 임시 비밀번호를 이용하여 mysql 서버에 접속해봅시다.

10

이 때 생성된 임시비밀번호는 최초 로그인 후 새로 변경해줘야만 다른 작업을 할 수 있습니다.
비밀번호를 재설정하지 않을 경우 위와 같은 에러와 함께 기능이 작동되지 않습니다.


mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '새로 설정할 비밀번호';
Query OK, 0 rows affected (0.01 sec)

mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql>

비밀번호를 재설정 하면 database 교체 등의 기타 sql 명령을 할 수 있습니다.


++ keyword

  • Installing MySQL on Linux Using the MySQL Yum Repository
  • A temporary password is generated for root@localhost
  • You must reset your password using ALTER USER statement before executing this statement
728x90
반응형