MySQLデータベース自動バックアップやろうと思ってさ
vi mysql-backup.sh してさ
ROOTPASS=のところにMysqlのパスワード書いてさ
./mysql-backup.sh したんだけどさ
エラーが出るんだよね。
DBI connect(';host=localhost;mysql_read_default_group=mysqlhotcopy','root',...) failed: Access denied for user 'root'@'localhost' (using password: YES) at /usr/bin/mysqlhotcopy line 178
って。
でもパスワードは合ってるのよ。
ちなみに
mysql -u root -p
Enter password:
でパスワード入れると入れるのよ。
でも
./mysql-backup.sh すると
エラーがでるのよ。
で、ぐぐったけどパスワードが違うんだよっていう情報しかなくてね、
でもずえったい!パスワードあってるのね。コピペしてんだしさ。
だからもう何でかわかんないしイライラしたんだけどさ、ポテチ食べたらイライラが解消してさ、
なんだ空腹でイライラしてたのかって、さ、まあそんなことはいいんだけどさ、
ためしにパスワードを変えてみたの。
そしたら難なくでけたの。
どうやらMysqlのパスワードには使わないほうが良いかもしれない記号っていうのがあるのかもしれないという結論に至った。たぶん。
~~~実験手順~~~
mysql -u root -p でログイン
SET PASSWORD FOR root@localhost=PASSWORD('aheahe');
でパスワード変更して
vi mysql-backup.sh で ROOTPASS=aheahe して
./mysql-backup.sh
※aheaheはMysqlのパスワードだよ
実験した記号
$ @ * # !&
~~~実験結果~~~
■■OKのやつ■■
aheahe
aheahe$
ahe@ahe
aheahe@
ahe#ahe
aheahe#
ahe!ahe
aheahe!
ahe*ahe
aheahe*
■■エラーが出るやつ■■
ahe$ahe
↓でたエラー
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
aheahe&
↓でたエラー
Enter password:
DBI connect(';host=localhost;mysql_read_default_group=mysqlhotcopy','root',...) failed: Access denied for user 'root'@'localhost' (using password: YES) at /usr/bin/mysqlhotcopy line 178
Enter password:
DBI connect(';host=localhost;mysql_read_default_group=mysqlhotcopy','root',...) failed: Access denied for user 'root'@'localhost' (using password: YES) at /usr/bin/mysqlhotcopy line 178
ahe&ahe
↓でたエラー
./mysql-backup.sh: line 7: ahe: command not found
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
実験以上
変数とかよくわかんない。
明日勉強する。
2009/05/22 追記
ROOTPASS='age$age' なら出来た。(シングルクォートで囲む)
最近のコメント