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

一.  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时,出现这个问题:

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

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

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

HKEY_LOCAL_MACHINE

  SYSTEM

    CurrentControlSet

      services

        MySQL

          ImagePath

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

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

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

感谢此文作者https://blog.csdn.net/yulutian/article/details/78971369,让我迷途知返,由于我的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

 

哎,这时候才可以了,看了我一个多小时,以后还是少用压缩版。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐