CentOS で mysql をインストール
sudo yum install http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm sudo yum install mysql mysql-devel mysql-server mysql-utilities
root パスワードどこ・・・
mysql -u root -p Enter password: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
パスワードロックかかってんの。どうすればいいの。
ログに書いてある。
sudo cat /var/log/mysqld.log | grep "temporary password" 2016-06-24T23:04:13.579055Z 1 [Note] A temporary password is generated for root@localhost: X3ebeCk*?D6p
インストール後のログを見ると書いてある。
まさか・・・の初期化ランダムパスワード
また、root でインストールした場合
/root/.mysql_secret
ココに書いてあることがあるとのこと。
それでも困ったらリセットする
mysql を起動するターミナルを上げておいて
sudo systemctl stop mysqld sudo mysqld_safe --skip-grant-tables
別のウインドウを開けてそこから別途接続する
use mysql; update user SET PASSWORD=PASSWORD("password") WHERE USER='root'; flush privileges; exit
これでリセットして対応する。。。。
Debianみたく初期インストール時に、パスワード聞いてくれたらイイのに。CentOS面倒くさい
CentOSの古いので試した。
mysqld_safe で起動したときに止める方法は、次の通り。
sudo /etc/init.d/mysqld stop sudo mysqld_safe --skip-grant-tables sudo /etc/init.d/mysqld stop
ちなみに centos 公式の mariadbは
rootパスワードなしインストールされた。これはこれで「う~ん」ってなんとも言えない感じになる。
dpkg がいいな、やっぱり。
参考資料
https://www.linode.com/docs/databases/mysql/how-to-install-mysql-on-centos-7
http://blog.manabusakai.com/2013/04/centos-mysql56-install/
2018-11-27 追記
sudo mysqld_safe --skip-grant-tables を起動したあとどうするかがわからなくなるので、追記