Programming/Server & Database

MariaDB 비밀번호, 권한 설정

BadaGreen_Kim 2020. 4. 22. 11:06

Sudo 모드

  1. 서비스 정지

    sudo systemctl stop mariadb

  2. mariadb 안전모드 실행

    sudo /usr/bin/mysqld_safe --skip-grant &

  3. 패스워드 변경

    $ mysql -uroot mysql
    Mariadb[mysql]> update user set password=password('변경할비밀번호') where user='root';
    Mariadb[mysql]> flush privileges;
    Mariadb[mysql]> exit;

  4. 접속 테스트

    sudo mysql -uroot -p
    패스워드 입력 ...

    MariaDB[(none)]>

  5. 서비스 재시작

    sudo systemctl stop mariadb
    sudo systemctl start mariadb

일반모드

  1. root 계정 접속 후, mysql database의 user table에서 비밀번호 업데이트
use mysql
update user set password=password('1234') where user='root'
FLUSH PRIVILEGES;
  1. root 계정 접속 후, 비밀번호 변경

    set password for 'root'@'localhost'= password('비밀번호;);
    FLUSH PRIVILEGES;

  2. mysqladmin 유틸리티를 통한 쉘에서 비밀번호 변경

    mysqladmin -u 계정 -p password '비밀번호'

→ set 이나, update문에서 password()함수를 통하여 비밀번호를 암호화를 해주는게 좋다.

4.특정 데이터베이스에 대한 권한을 설정해준다.

grant all privileges on local_database.*to '계정'@'localhost' identified by 'password';
FLUSH PRIVIEGES:

++ 추가

MySQL5.7 이상 버전에서는 아래와 같이 해줘야함.

update mysql.user SET authentication_string=PASSWORD('비밀번호') WHERE user='root';
FLUSH PRIVILEGES;