- linux ubuntu mysql 5.7 upgade to 8.0


* mysql 5.7 DB 백업


* mysql 5.7 삭제(remove, uninstall)
sudo service mysql stop

sudo apt-get remove --purge mysql-server mysql-client mysql-common

sudo apt-get remove --purge mysql*
sudo apt-get purge mysql*

sudo apt-get autoclean
sudo apt-get remove dbconfig-mysql

dpkg -l | grep mysql | grep ii


//-------------------------
* repository 설정
- 여기서 설치할 mysql 의 버전이 결정된다


- repository 다운로드
- 최신 버전 확인
https://dev.mysql.com/downloads/repo/apt/

wget -c https://dev.mysql.com/get/mysql-apt-config_0.8.14-1_all.deb


- repository 설치
sudo dpkg -i mysql-apt-config_0.8.14-1_all.deb
- 리스트중에 있는 ok (맨 아래 있는 별도  아님) 에서  Enter

- repository 업데이트
sudo apt-get update


//----------------------------
* mysql 설치
sudo apt-get install mysql-server
    - password 방식을 최신으로 하면 php를 통해 접속할수없다

* MySQL 보안 설정 - 옵션
sudo mysql_secure_installation

Validate Password Plugin
Change Root Password
Configure MySQL Security


* 서비스 시작
sudo service mysql start

ps aux | grep mysql

- 서비스 중지
sudo service mysql stop

- 서비스 상태 보기
sudo service mysql status

- mysql 콘솔 접속
sudo mysql -u root -p


//---------------------------------
* 에러 메시지

    - 접속 불가
Host is not allowed to connect to this MySQL server 'mysql 8'

    - 해결 방법
        - 모든 IP에서 접속가능한 계정을 추가

CREATE USER 'new_user'@'%' IDENTIFIED BY 'new_pass';
GRANT ALL ON *.* TO 'new_user'@'%';
FLUSH PRIVILEGES;


//-------------------
- 참고 : 사용자 비밀번호 변경 명령
ALTER USER 'new_user'@'%' IDENTIFIED WITH mysql_native_password BY 'new_pass';
FLUSH PRIVILEGES;

 

 

//----------------------

// 설치 후기

* 높은 호환성

5.7 버전의 자료를 백업 받아 8.0에 복원했는데 사용시 에러가 발생하지 않음

 

* 향상된 속도

AWS의 같은 사양의 RDS 서버에서 측정해보니 8.0이 20%정도 속도 향상이 있음

 

* 윈도우에 설치하고 너무 느려서 놀랐는데 innodb_buffer_pool_size 을 늘려주니 속도 빨라짐

    - 초기 설정값이 8M ;;

 


//-----------------------
// 참고
https://phoenixnap.com/kb/how-to-install-mysql-on-ubuntu-18-04
https://dev.mysql.com/doc/mysql-apt-repo-quick-guide/en/

반응형
Posted by codens