MySQL5.6の初期インストール

5.6から初期パスワードが設定されているらしく、5.5以前でパスワード設定をしてたときは問題なかったのだけれど、まっさらな状態の時にするとこの問題に直面したので、その時参考にしたブログのメモ。

http://d.hatena.ne.jp/akishin999/20130207/1360241401

/root/.mysql_secret

にあるそうです。

なので、こうしちゃいます。

touch ~/.my.cnf
echo [mysql] >> ~/.my.cnf
echo user=root >> ~/.my.cnf
sed -e "s/^#.*: /password=/" /root/.mysql_secret >> ~/.my.cnf
chmod 600 ~/.my.cnf

抽出はsedよりgrep使うべきなんだろうけど。

 

あと、ポート設定に、こちらを参考にしました。

http://ysweb.blogspot.jp/2008/07/sed.html

http://d.hatena.ne.jp/rx7/20110310/p1

 

sed -i "/^:OUTPUT ACCEPT/a -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT" /etc/sysconfig/iptables

CentOSだと"-i"オプションができるけど、他でも使えるかどうかは怪しいらしい。

 

一度MySQLにログインしてパスワード変更しないと、リクエストを一切受け付けてくれないんだけど、最初のパスワード変更はスクリプト化できないのだろうか・・・