zoukankan      html  css  js  c++  java
  • Navicat连接MySQL数据库的一些问题与解决方案

    前言

    安装MySQL数据库与Navicat并不算难事,关键是怎么让他们工作花费了我整整一天的时间,最终才把弄好。遇到各种各样的问题,上网看了大量博客,发现很多博客都是直接copy或者并不能非常好的解答自己遇到的问题。这里记录一下自己遇到的问题和解救方案。

    关于软件

    Navicat和MySQL直接在官网上下载即可,安装也是非常的方便。Navicat是收费软件,如果觉得自己比较富裕的话可以购买,如果想破解的话,网上也有非常多的教程(P.S:这里不建议下载“绿色版”或者“完美破解版”,很有可能是流氓软件或者是不完整功能,现在下载觉得可以使用,后续开发的时候就会遇到各种bug,所以推荐下载官方正版,然后破解。PP.S:在这里不给出破解的方法是因为,破解工具在后期可能就会因为产品的升级发生改变,导致不能皮杰,所以这里不给出破解教程。)

    遇到的问题

    这里只说一下自己遇到的问题和解决方法(不知道是不是版本问题,反正网上能搜到的解决办法我实际上都试了一遍........)

    关于无法启动MySQL

    1067:你的MySQL服务没有打开,进入任务管理器->服务,在目录下查看MySQL服务是否已经开启;如果是MySQL Developer版本的话,应该会有MySQL与MySQL80这两个服务,只要MySQL80是开启的就代表你服务开启成功了。
    2018-05-18_10-11-13.png
    3534:这个应该是最常见的错误。可能的原因是实际上你的mysqld进程或者其他进程占用了端口3306,将进程kill一下就可以了,当然这种情况出现的原因比较低。最普遍的可以尝试下面的方法:
    C:Program FilesMySQLMySQL Server 8.0in加入到环境变量path中,这里的路径可能和我不一样,填写你们自己的路径;

    进入C:Program FilesMySQLMySQL Server 8.0,首先看是否有data文件夹
    1.如果没有data文件夹就进入C:Program FilesMySQLMySQL Server 8.0in目录下,shift加鼠标右击,点击进入命令窗口(cmd窗口),输入下列命令:

    mysqld --install
    mysqld --initialize
    net start mysql
    

    2.如果有data文件夹,先将data文件夹下所有的文件清空或者移走,然后进入C:Program FilesMySQLMySQL Server 8.0in执行:

    mysqld -remove
    mysqld --install
    mysqld --initialize
    net start mysql
    

    如果还是3534,重启电脑重新启动一下服务试试。因为出现3534总体来说就是端口被占用、服务没有成功开启、data文件夹出现了问题、未加入path这些原因造成的。

    1405:这个是最让我头疼的问题,好不容易解决了服务开启问题,但是无法登陆。登陆的方式为在C:Program FilesMySQLMySQL Server 8.0inCMD窗口下输入mysql -u root -p然后输入密码登录即可,但是就是这里会出现1405的错误,有以下两个原因:
    1.输对了密码,确保是正确的但却始终报错。这个很有可能是你配置Navicat出现的问题,更改了加密规则,所以进不了mysql命令窗口。这里我建议是重装一下mysql server,因为最为方便。
    2.不记得密码了,加密方式没有更改。首先net stop mysql停止mysql服务,然后找到my.ini文件打开进行修改(一般会在mysql安装目录下C:Program FilesMySQLMySQL Server 8.0',但也有可能是在C:ProgramDataMySQLMySQL Server 8.0下,ProgramData需要打开“显示隐藏文件的功能”) 在my.ini中的[mysqld]下加上skip_grant_tables跳过权限检查,保存。 然后登陆mysql -u root -p`,这时计时需要输入密码一个回车就可以正产登陆了,之后通过下列命令:

    #将数据库切换至mysql库
    mysql> USE mysql;
    #修改密码
    mysql> UPDATE user SET password=PASSWORD(‘newpasswd’)WHERE user=’root’; 
    #刷新MySQL权限相关的表
    mysql> flush privileges;
    mysql> exit;
    

    修改密码成功后,将my.ini文件中加入的跳过权限语句删除或加#号注释。重启服务,使用修改后的密码登录即可。

    关于Navicat

    如果成功解决了破解问题,其实Navicat遇到的问题就非常的少,基本上只有2059错误。
    2059:出现2059这个错误的原因是在mysql8之前的版本中加密规则为mysql_native_password,而在mysql8以后的加密规则为aching_sha2_password。我们可以将mysql用户登录的加密规则修改为mysql_native_password。
    请确保能进入MySQL>这个输入命令的窗口,

    第一条: ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
    第二条: ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
    #注意此处的password为你的登陆密码,本人的操作为:
    第一条: ALTER USER 'root'@'localhost' IDENTIFIED BY '123****' PASSWORD EXPIRE NEVER;
    第二条: ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123****';
    

    关于删除mysql

    如果发现自己实在不知道为什么会出错,各种方式都尝试了,那么很有可能你在尝试中更改了某些配置,所以可以重新安装mysql。除了利用安装程序进行卸载之外,还需要清除regedit注册表中的信息,可以参照这篇博客

    最终效果图

    2018-05-18_11-02-50.png

    2018-05-18_11-03-50.png

    2018-05-18_11-04-07.png

    作者:YunLambert

    -------------------------------------------

    个性签名:一名会音乐、爱健身的不合格程序员

    可以Follow博主的Github哦(っ•̀ω•́)っ✎⁾⁾

  • 相关阅读:
    huffman编码
    查询选修了全部课程的学生姓名【转】
    java中的内部类
    jdbc技术
    多态
    存储过程,触发器,Mysql权限,备份还原
    sql查询重点
    常用的sql基础
    手动+工具开发动态资源
    Tomcat
  • 原文地址:https://www.cnblogs.com/yunlambert/p/9055220.html
Copyright © 2011-2022 走看看