[리눅스] CentOS 7 Mysql 설치 방법 - How to install MySQL on CentOS 7
CentOS7에서는 MySQL서비스를 기본적으로 MariaDB를 사용합니다. mysql이 설치되어 있지 않기 때문에 사용하려면 MariaDB를 삭제하고 MySQL을 다시 설치하는 방법으로 진행해야 합니다.
오늘은 CentOS 7 환경에서 Mysql을 설치하는 방법에 대해서 알아보겠습니다.
CentOS7에서 MySQL 설치하는 방법
먼저 maria db를 찾아서 삭제해 줍니다.
# yum list installed mariadb|* 명령어로 설치되어 있는 마리아db를 찾아 줍니다.
# yum remove -y MariaDB-Client.x86_64 설치되어 있는 마리아db를 지워줍니다.
이제 MySQL을 설치해 줍니다. 아래의 명령어를 순서대로 입력하셔서 설치하실 수 있습니다.
1. 패키지 설치
# yum -y install http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
# yum -y install mysql-community-server
2. 서비스 시작
# systemctl start mysqld
# systemctl enable mysqld
3. MySQL 실행
# mysql
mysql > quit
Access denied for user 'root@'localhost' (using password: NO) 라는 메시지가 나오면 임시 비밀번호를 사용해서 비밀번호를 초기화 해줘야 합니다.
/var/log/mysqld.log 안에서 mysql의 임시 비밀번호를 확인하실 수 있습니다.
열어보시고 /password 로 검색을 해보시면 localhost: 비밀번호 이런식으로 임시 비밀번호가 들어 있는 것을 볼 수 있습니다.
mysql -u root -p 로 패스워드 입력 후 mysql에 접속할 수 있습니다.
4. MySQL 설정(패스워드 및 패스워드 정책)
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '패스워드';
정책 Flush
mysql> FLUSH PRIVILEGES;
패스워드 변경
mysql> UPDATE user set authentication_string=password('openTutorials') where user='root';
패스워드 복잡도 설정
mysql> SHOW variables LIKE 'validate_password%';
권한 Low
mysql> SET GLOBAL validate_password_policy=LOW;
mysql> UPDATE user set authentication_string=password('openTutorials') where user='root';
5. 방화벽 오픈
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
show databases; 명령어를 이용하면 생성되어 있는 데이터베이스를 확인하실 수 있습니다.
use 데이터베이스명 명령어로 사용하실 수 있습니다.
이제 MySQL을 사용하실 준비가 끝났습니다.
MySQL 버전별패스워드변경
MySQL 5.7.6 이상
ALTER USER 'root'@'localhost' IDENTIFIED BY '패스워드';
MySQL 5.7.5 이하
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('패스워드');
-- MySQL 5.7 이상
UPDATE mysql.user SET authentication_string=PASSWORD('패스워드') WHERE user='root' AND Host='localhost';
FLUSH PRIVILEGES;
-- MySQL 5.7 미만
UPDATE mysql.user SET password=PASSWORD('패스워드') WHERE user='root' AND Host='localhost';
FLUSH PRIVILEGES;










