apt-get
이라는 패키지 매니저를 이용해 설치를 진행한다. (우분투 리눅스를 설치했다면 이미 설치되어 있다.)
$ sudo apt-get update
$ sudo apt-get install mysql-server
설치 중간 중간 Password를 물어보는데 빈칸으로 두고 OK를 누르면 Ubuntu 서버 비밀번호와 자동으로 동기화 된다.
처음에 이 부분을 설정을 안해줬더니 MySQL Workbench를 사용하려고 했더니 오류가 발생했다.
$ sudo ufw allow mysql
$ sudo systemctl start mysql
$ sudo systemctl enable mysql
$ sudo /usr/bin/mysql -u root -p
ERROR 1698 (28000)
처음에
$ sudo mysql -u root -p
로 진행했더니 아래와 같은 에러가 발생했다.ERROR 1698 (28000): Access denied for user 'root'@'localhost'
해결방법:
mysql
대신/usr/bin/mysql
과 같이 경로를 정확하게 명시해주면 된다.
성공적으로 접속하면 터미널 창이 아래와 같이 변경된다.
mysql> 여기다가 입력하면 된다
mysql> SELECT User, Host, authentication_string FROM mysql.user;
TESTDB
라는 데이터 베이스 만들고 확인mysql> CREATE DATABASE TESTDB;
mysql> SHOW DATABASES;
TESTDB
데이터베이스를 사용할 계정 testuser
만들고 확인mysql> CREATE USER 'testuser'@'localhost' IDENTIFIED BY 'mysql비번';
mysql> FLUSH PRIVILEGES;
mysql> SELECT User, Host, authentication_string FROM mysql.user;
TESTDB
데이터베이스를 사용할 계정 testuser
에 권한 부여mysql> GRANT ALL PRIVILEGES ON 데이터베이스이름.* FOR'testuser'@'localhost';
mysql> FLUSH PRIVILEGES;
mysql> SHOW GRANTS FOR'testuser'@'localhost';
mysql> SELECT User, Host, authentication_string FROM mysql.user;
mysql> show variables like "%version%";
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('바꿀비번');
또는
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '바꿀비번';
감사합니다. 이유는 모르겠는데, 초기에 sudo /usr/bin/mysql -uroot -p 를 해줘야
다음부터 sudo mysql -uroot -p 이렇게 하면 들어가 지네요