开发者社区> 问答> 正文

navicat for mysql 连接报错1251详细解决步骤 ?报错

图片说明
navicat for mysql 连接报错1251详细解决步骤

展开
收起
爱吃鱼的程序员 2020-06-23 13:57:13 767 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    我之前也是这样(安装的是mysql8.0)后来卸载重新安装5.7版本的,就没问题了

    我的是8.0的版本,因为比较新的mysql采用新的保密方式所以旧的似乎不能用,改密码方式:
    usemysql;
    ALTERUSER'root'@'localhost'IDENTIFIEDWITHmysql_native_passwordBY'你的密码';

    FLUSHPRIVILEGES;

    首先卸载,然后重新安装

    MYSQL数据库的权限不够,重新更改权限就可以

    先用root登录MYSQL服务器,执行

    mysql>setpasswordforuser1@"localhost"=old_password('yourPassword');

      原因是因为你使用的mysql服务器版本中使用了新的密码验证机制,这需要客户端的版本要在4.0以上,原来的密码函数被改为old_password();这样使用password()生成的密码在旧的版本上的客户端就不好使了,而PHP中的MYSQL客户端都是3.23的(当然,mysqli的扩展除外),问题就在这了。
    望采纳

    需要修改密码
    首先任务管理器,找到服务,mysql57停止它,
    然后cmd命令下进入mysql安装目录,是mysqlserver5.7下的bin目录下
    执行mysqld--skip-grant-tables有可能会出错,因为升级导致文件缺失,出错就先执行mysqld--initialize-insecure--user=mysql
    然后再打开一个cmd窗口,还是bin目录下,直接mysql进入,上一步的执行就是无密码登录,
    之后
    updatemysql.usersetauthentication_string=password('123456')whereuser='root'andHost='localhost';
    执行这条修改密码的命令,123456就是密码

    然后重新打开mysql57服务应该就可以了

    你这虽然设置了,但是没有保存

    还没设置好帮帮我

    2020-06-23 13:57:30
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
搭建电商项目架构连接MySQL 立即下载
搭建4层电商项目架构,实战连接MySQL 立即下载
PolarDB MySQL引擎重磅功能及产品能力盛大发布 立即下载

相关镜像