BEAR.Sundayのことを教えてくれたNEKOGETさんがmysqlのrootにパスワードが設定してあるとテストが通らないということを云ってたのでちょっと調べてみた。
2012/7/12 追記
※ MySQLのrootにパスワードが設定されている場合の対処法が本体の方で修正が入りました。
http://code.google.com/p/bearsunday/wiki/Install をご参照ください。
./tests/PagingQueryTest.php: $this->pdo = new \PDO("mysql:host=localhost; dbname=blogbeartest", "root", ""); ./tests/PagerTest.php: $this->pdo = new \PDO("mysql:host=localhost; dbname=blogbeartest", "root", ""); ./tests/DoctrineDbalAdapterTest.php: $this->pdo = new \PDO("mysql:host=localhost; dbname=blogbeartest", "root", ""); ./apps/sandbox/tests/PageBlogPostsTest.php: $pdo = new \PDO("mysql:host=localhost; dbname=blogbeartest", "root", ""); ./apps/sandbox/tests/AppPostsTest.php: $pdo = new \PDO("mysql:host=localhost; dbname=blogbeartest", "root", ""); ./sandbox/scripts/test.config.php: 'password' => null, ./sandbox/scripts/test.config.php: 'password' => null,
ざくっと上記7つのファイルに対してrootのパスワードを設定しないとphpunitがEとSの嵐になってしまう。
前者5つは"password"後者2つは'password'という形での設定が必要となるようだ。
私はmysqlにまったくもって慣れていないのでrootのパスワードの設定やパスワードリセットに苦労したのは云うまでもないw
ちなみにmysqlのrootパスワードの設定方法は
# mysql mysql> SET PASSWORD FOR root@localhost=PASSWORD('hoge'); Query OK, 0 rows affected (0.00 sec) mysql> quit
のような感じで行う。
またパスワードクリアについては
# killall mysqld # /usr/bin/mysqld_safe --user=root --skip-grant-tables & mysql mysql mysql> update user set Password=null where Host='localhost' and User='root'; mysql> quit # /etc/rc.d/init.d/mysqld restart
な感じでいけるので備忘録。
0 件のコメント:
コメントを投稿