navicat连接CentOS的mysql在创建存储过程时出现1146 - Table ‘mysql.proc’ doesn't exist的问题

场景:

以下操作都是客户机和云主机之间

客户机用navicat

云主机用mysql



原因,我在navicat中嫌碍事,顺手把mysql给删了

解决方案如下;
service mysqld stop

pkill mysql

service mysqld start

这个时候如果在云服务器用mysql(root权限下,免用户名和密码来登录mysql)登录,就会发现被删除的mysql数据库又回来了。

这个时候用navicat重新连接数据库的时候,需要把root密码去掉,也就是说,直接在云服务器终端输入mysql不用用户名和密码就能直接登录了。

此时会报错

继续解决:

mysql>update user set host = '%' where user ='root';
mysql>select host, user from user; 
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION //赋予任何主机访问数据的权限
mysql>FLUSH PRIVILEGES //修改生效
mysql>EXIT //退出MySQL服务器
此时在客户机的navicat中连接数据库,应该可以正常连接并且可以创建存储过程了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值