u014266400
Jstions
2018-04-27 12:51
采纳率: 75%
浏览 22.4k

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

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

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

9条回答 默认 最新

  • sinat_41931050
    sinat_41931050 2018-05-03 08:02
    已采纳

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

    点赞 评论
  • qq_41737921
    qq_41737921 2018-05-03 01:47

    我的是8.0的版本,因为比较新的mysql采用新的保密方式所以旧的似乎不能用,改密码方式:
    use mysql;
    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';

    FLUSH PRIVILEGES;

    点赞 40 评论
  • qq_27060365
    qq_27060365 2018-04-27 12:54

    首先卸载,然后重新安装

    点赞 评论
  • wentian_e
    wentian_e 2018-04-27 12:55

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

    点赞 评论
  • qq_41994038
    qq_41994038 2018-04-27 13:01

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

    mysql>set password for user1@"localhost"=old_password('yourPassword');

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

    点赞 评论
  • qq_41403812
    qq_41403812 2018-04-27 14:38

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

    点赞 评论
  • qq_41403812
    qq_41403812 2018-04-27 14:38

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

    点赞 评论
  • qq_15634737
    qq_15634737 2018-04-27 15:40

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

    点赞 评论
  • ywq1016243402
    Dazzling_Ywq 2018-07-30 12:18

    还没设置好 帮帮我

    点赞 评论

相关推荐