rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm
mysql-community 레포지터리 추가
vi /etc/yum.repos.d/mysql-community.repo
자신이 사용하고 싶은 버전에 맞는 레포지터리만 enable하고 나머지는 disable하면 다음과 같은 결과가 생성된다
버전이 맞다면 설치
yum install mysql-community-devel.x86_64 mysql-community-server.x86_64 mysql-community-client.x86_64
systemctl start mysqld
systemctl enable mysqld
mysql 일정버전 이상부터는 초기에 root패스워드를 랜덤으로 생성하여 /var/log/mysqld.log에 저장하게 된다.
찾는 방법은 두개중에 하나를 선택하면된다.
grep 'temporary password' /var/log/mysqld.log
cat /var/log/mysql.log | grep 'temporary password'
패스워드를 입력하여 mysql에 접속하고 root 패스워드를 alter 명령어로 지정해주면된다.
alter user 'root'@'localhost' identified by '변경할 비밀번호';
혹은 패스워드를 못찾겠다면 다음과 같은 내용으로 root passwd를 변경할수 있다.
systemctl stop mysqld
systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"
sysetmctl start mysqld
mysql -u root
mysql> UPDATE mysql.user SET authentication_string=PASSWORD('변경할 비밀번호')
-> WHERE User = 'root' AND Host = 'localhost';
mysql> FLUSH privileges;
mysql> quit;
systemctl stop mysqld
systemctl unset-environment MYSQLD_OPTS
systemctl start mysqld
여기서 set-environment MYSQLD_OPTS="--skip-grant-tables"은 안전모드로 로그인하여 root패스워드를 묻지않고 할수있게된다. 그리하여 접속하여 root 패스워드를 변경할수 잇게되고, 안전모드를 해제하고 해보면 변경된 패스워드로 접속할수 있다.
이때 database를 만들려면 역시 alter를 하여 root 패스워드를 설정해주고 나서 진행하여야 한다.