今天使用mysql的时候发现一个问题:居然登不上去,老是说我密码错误,明明是之前设置好的。配置的过程中遇到了各种问题 ,总的就一个:
MySQL 服务正在启动 .
MySQL 服务无法启动。
先试试删除my.ini中的 default-character-set=utf8
反正我是这样莫名奇妙就好了的
如果忘记密码咋办?
解决方案:
以管理员身份进入mysql的bin
那先清空data文件下内容 然后
mysqld --initialize-insecure(配置data文件内容,无密码状态)
mysqld remove(清除服务)
mysqld --install(配置服务)
net start mysql(开启服务)
进入MySQL后修改密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的新密码';
注意:
1. 等使用管理员身份登陆CMD
2. 得进入bin目录才可以操作,即使配置了环境变量
3. 得配置my.ini(存放配置信息)
4. 得创建data文件夹(存放数据)
初始化data目录
mysqld –initialize-insecure –user=mysql
说明:使用-initialize生成随机密码,使用-initialize-insecure生成空密码。默认帐号root,后面的-user=mysql不更改
mysqld --initialize-insecure
还遇到一个问题:
D:\mysql-8.0.11-winx64\bin>net start mysql
发生系统错误 193。
*** 不是有效的 Win32 应用程序。
解决方案:
进入你的Mysql安装目录中的bin文件夹中,找到mysqld这个0kb文件
并删除掉TA,然后你就可以开心的玩耍了~
还有mysql编码问题注意:
如何查看编码格式:
show variables like 'character%';
my.ini中配置如下即可。
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
# 设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=D:\mysql-8.0.11-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\mysql-8.0.11-winx64\data
# 允许最大连接数
max_connections=20
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=MyISAM
2018.8.20更新:
如果mysql服务无法启动:
cmd下输入 mysqld --console 看到报错信息