问题:1142 - INSERT command denied to user 'root'@'183.219.230.178' for table 'demo'
解决办法:
1、docker ps //查看mysql的进程号
2、docker exec -it 3157d8500299 /bin/bash //934e3c005153 这个为上述步骤查到的进程号
3、mysql -uroot -proot //登入你的数据库,uroot p后面跟你自己的数据库密码
4、 use mysql ; //选择你的数据库
5、update user set Insert_priv='Y' where user='root'; //调整权限
6、flush privileges; //刷新下
完美解决报1142问题的错误,亲测有效,阿里大牛提供。
二、数据库无法新建数据库
UPDATE `mysql`.`user` SET `Create_priv`='Y',`Drop_priv`='Y' WHERE `Host`='%' AND `User`='root';
三、navicat无法连接数据库时,执行下列命令
各种权限:
update user set Select_priv ='Y' where user = 'root';
update user set Insert_priv ='Y' where user = 'root';
update user set Update_priv ='Y' where user = 'root';
update user set Delete_priv ='Y' where user = 'root';
update user set Create_priv ='Y' where user = 'root';
update user set Drop_priv ='Y' where user = 'root';
update user set Reload_priv ='Y' where user = 'root';
update user set Shutdown_priv ='Y' where user = 'root';
update user set Process_priv ='Y' where user = 'root';
update user set File_priv ='Y' where user = 'root';
update user set Grant_priv ='Y' where user = 'root';
update user set References_priv ='Y' where user =
'root';
update user set Index_priv ='Y' where user = 'root';
update user set Alter_priv ='Y' where user = 'root';
update user set Show_db_priv ='Y' where user = 'root';
update user set Super_priv ='Y' where user = 'root';
update user set Create_tmp_table_priv ='Y' where user =
'root';
update user set Lock_tables_priv ='Y' where user =
'root';
update user set Execute_priv ='Y' where user = 'root';
update user set Repl_slave_priv ='Y' where user =
'root';
update user set Repl_client_priv ='Y' where user =
'root';
update user set Create_view_priv ='Y' where user =
'root';
update user set Show_view_priv ='Y' where user = 'root';
update user set Create_routine_priv ='Y' where user =
'root';
update user set Alter_routine_priv ='Y' where user =
'root';
update user set Create_user_priv ='Y' where user =
'root';
update user set Event_priv ='Y' where user = 'root';
update user set Trigger_priv ='Y' where user = 'root';
执行成功后关闭两个cmd
并且打开任务管理器 关闭 mysqld 进程
我的电脑右键->管理->服务->MySql启动服务
修改用户密码
update user set password=password("new_pass") where user="root";
————————————————
版权声明:本文为CSDN博主「狂澜咆哮」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_35486456/article/details/113169478