问题一
在键入命令mysqldump -uroot(用户名) -proot(密码) pref_123456(数据库名) > /root/a.sql时报如下错误:
mysqldump: Got error: 1045: Access denied for user 'root'@'localhost' (using password: YES) when trying to connect
解决办法: 修改/etc/my.cnf配置添加以下语句
[mysqldump]
user=root #----为备份用户名
password=root # ----为用户密码
然后重启mysql
问题二
在键入命令mysql -uroot -proot 时报错如下:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
解决办法:
1.在mysql的安装目录下,找到mysql的配置文件my.ini,在[mysqld]这个条目下加入skip-grant-tables(登录时不使用授权表),保存,重启mysql。 2.之后在cmd输入mysql -uroot -p按回车,出现password,直接回车可以成功登录mysql,不会报1405了。 3.在显示mysql>的命令行里输入use mysql,回车,再输入update user set password=password(“新密码”) where user=”root”; 4.输入flush privileges;(刷新数据库),再输入quit;或者exit;(退出数据库) 5.最后一步就是在my.ini里面把之前加入的skip-grant-tables删除或用#注释掉。再重启mysql。之后再用mysql -uroot -ppassword登录就不会再报1405了
问题三
在键入命令mysqldump -uroot -proot pref_827146 > /root/aa.sql时,报错如下:
mysqldump: [Warning] Using a password on the command line interface can be insecure.
mysqldump: Got error: 1449: The user specified as a definer ('dev'@'%') does not exist when using LOCK TABLES!
解决办法:
只要给root用户再添加一个对全部host都有可以访问的权限 操作如下:
登陆mysql
mysql -u root -pPasswd
mysql >grant all privileges on . to root@"%" identified by "Passwd"
mysql >flush privileges;