接続プール構成にaccess denied for user'root'@'localhost'(using password:YES)異常が発生しました
5309 ワード
私は入門したばかりの白で、最初からjavaを独学して、先生の指導がなくて、だから実際の操作の中で出会ったすべての小さい問題はすべて自分で解決しなければならなくて、本文は私がデータベースを配置する中で出会った面倒で、ついでに記録して、後で忘れないようにしました.接続プール関連の構成:
ここでパスワードを設定した場合.Windowsシステムのmysqlに対するデフォルトのユーザー名はrootでパスワードがありません.しかしlinuxシステムにはパスワードがあります.パスワードを変更しないと
パスワードを変更するとデータベースにリンクできます.
<Context>
<Resource name="jdbc/TestDB" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
username="root" password=" " driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/ "/>
Context>
ここでパスワードを設定した場合.Windowsシステムのmysqlに対するデフォルトのユーザー名はrootでパスワードがありません.しかしlinuxシステムにはパスワードがあります.パスワードを変更しないと
access denied for user 'root'@'localhost'(using password:YES)
エラーになることがあります.パスワードが間違っていると思っていましたが、インターネットで調べてみるとrootの権限の問題でした.windwosシステムでデータベースの変更にアクセスするには、管理者の下でパスワードを設定する必要があります.管理者として実行し、net start mysqlでデータベースを起動します.MySQLでrootパスワードを変更する方法を4つ整理しました.
1: SET PASSWORD
mysql -u root
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');
2: mysqladmin
mysqladmin -u root password "newpass"
root ,
mysqladmin -u root password oldpass "newpass"
3: UPDATE user
mysql -u root
mysql> use mysql;
mysql> UPDATE user SET Password = PASSWORD('newpass') WHERE user = 'root';
mysql> FLUSH PRIVILEGES;
root ,
mysqld_safe --skip-grant-tables&
mysql -u root mysql
mysql> UPDATE user SET password=PASSWORD("new password") WHERE user='root';
mysql> FLUSH PRIVILEGES;
パスワードを変更するとデータベースにリンクできます.