解决mysql登陆报错:ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)

今天在安装一个压缩包mysql-5.7.19时,碰到了一系列问题,现将这些问题罗列出来:html

一.  ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)

解压后,把"D:\Program\mysql-5.7.19-winx64\bin"配置到环境变量path下,在cmd中执行登陆操做: mysql -u root -p时,出现这个问题:mysql

在网上搜索资料,查到https://blog.csdn.net/lianzhang861/article/details/78919060,解决方案是: mysqld --install, 安装完net start mysql
sql

二.  发生系统错误 2.  系统找不到指定的文件

这下又貌似行不通了,https://jingyan.baidu.com/article/4e5b3e19245cec91901e24bc.html,这个答案告诉咱们要修改注册表工具

HKEY_LOCAL_MACHINE编码

  SYSTEMspa

    CurrentControlSet.net

      services3d

        MySQLcode

          ImagePathserver

个人默认值是C:\Program Files\MySQL\MySQL Server 5.7\mysqld,找到该路径,并无发现有MySQL文件,咱们将它改成D:\Program\mysql-5.7.19-winx64\bin\mysqld,这个是我真正安装MySQL的路径,来,再试一下

瞬间尴尬了,咱们找到控制面板--管理工具--服务,决定去启动它时,发现:

三.  服务没有任何错误。 请键入 NET HELPMSG 3534 以得到更多的帮助

感谢此文做者http://www.javashuo.com/article/p-suazustg-bk.html,让我迷途知返,因为个人mysql根目录下没有data目录和my.ini配置文件,因而新建了一个my.ini,内容为:

注意:这里面要提一句,basedir=后面是你安装的mysql的bin目录所在的路径!

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8 
[mysqld]
#设置3306端口
port = 3306 
# 设置mysql的安装目录
basedir=D:\\Program\mysql-5.7.19-winx64
# 容许最大链接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 建立新表时将使用的默认存储引擎
default-storage-engine=INNODB

好,这下子咱们按照做者说的,不要新建data目录,而是让mysql自动生成,在cmd中执行

这下看似好了,实际还有一个问题

四.  ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password:yes)

参照这篇文章https://blog.csdn.net/keepd/article/details/77151006,找到一个方法,就是在my.ini配置文件中最后一行添加:

skip-grant-tables

保存,而后在cmd中执行

登陆musql

mysql -u root

此处注意不要加-p


修改密码,mysql5.7用此语法

use mysql ;

update mysql.user set authentication_string=password('123456') where user='root' ;


回到第二步骤去掉加上的,保存

skip-grant-tables

退出

exit

重启mysql服务

net stop mysql

net start mysq

哎,这时候才能够了,看了我一个多小时,之后仍是少用压缩版。

相关文章
相关标签/搜索