36
30

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

MySQLインストール後、アクセス拒否 (Access denied for user ‘root’@’localhost’)

Posted at

#myqslを起動し、アクセスする時、拒否られた。

$ mysql -u root
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

rootユーザーにアクセス権限がない

#mysql一旦停止

$ mysql.server stop

#権限を回避してアクセス

$ mysqld_safe --skip-grant-tables
2020-07-27T12:14:14.6NZ mysqld_safe Logging to '/usr/local/var/mysql/XXXX.err'.
2020-07-27T12:14:14.6NZ mysqld_safe Starting mysqld daemon with databases from /usr/local/var/mysql

mysqld_safe
-> mysqldサーバーを起動するためのスクリプト

--skip-grant-tables
-> 権限なしで起動

上記コマンドを入力したら、新しくターミナルタブを開いてください。(command + T)
#mysqlへアクセス

$ mysql -u root

mysql>

#権限確認

mysql> use mysql;
Database changed
mysql> select * from user;

use (データベース名);
-> データベース選択

select (カラム) from (テーブル);
-> 指定したテーブルから指定したカラムの情報取得
#userテーブル削除

mysql> truncate table user;
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)

truncate table (テーブル);

-> テーブル内のデータ全て削除

flush privileges;
-> テーブルを再ロード

#rootユーザーを作成し、権限付与

mysql> create user 'root' identified by 'password';
Query OK, 0 rows affected (0.04 sec)

mysql> SELECT user, host FROM mysql.user;
+------+------+
| user | host |
+------+------+
| root | %    |
+------+------+
1 row in set (0.01 sec)

mysql> grant all privileges on *.* to 'root';
Query OK, 0 rows affected (0.01 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> quit;
Bye

create user 'ユーザー名' identified by 'パスワード';
-> ユーザー作成 & パスワード設定

grant all privileges
-> GRANT OPTION を除き、指定されたアクセスレベルにあるすべての権限を付与します。

on . to 'ユーザー名';
-> 特定のサーバー上のすべてのデータベースに適用されるグローバル権限を割り当てます。

#mysqld_sefe プロセス終了

$ ps
  PID TTY           TIME CMD
  508 ttys000    0:00.55 -bash
76932 ttys001    0:01.19 -bash
98076 ttys001    0:00.04 /bin/sh /usr/local/opt/mysql@8.0/bin/mysqld_safe --skip-grant-tables
98176 ttys001    1:03.36 /usr/local/opt/mysql@8.0/bin/mysqld --basedir=/usr/local/opt/mysql@8.0 --datadir=/usr/local/var/mysql --plugin-dir=/usr/local/opt/mysql@8.0/lib/plugin --skip-grant-tables --log-e
81032 ttys002    0:00.36 -bash
$ KILL 98076
$ KILL 98176

ps
-> 現在実行されているプロセス一覧表示

KILL (PID)
-> プロセス終了

#mysql再起動、再アクセス

$ mysql.server start
Starting MySQL
.. SUCCESS! 

$ mysql -u root -p
Enter password: 
36
30
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
36
30

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?