文章目录
记一次重装mysql的经历
前言
之前的mysql服务不知道为啥无法启动了,尝试各种方式无果,最终决定重新安装mysql
本安装MySQL的教程仅适用5.7.19版本,欢迎各位大佬批评指教~
一些先前的错误截图,安装的版本是5.7.19,直接解压安装包然后修改的my.ini,没有用安装引导程序,因此在安装的程序中找不到mysql,甚至c盘ProgramData里也没有mysql的内容,因此并没有诸如卸载/清理注册表的步骤
重新安装的步骤
1.1 删除MySQL服务
先前已经配置过环境变量了,cmd用管理员身份打开,执行sc delete mysql
指令,删除先前的MySQL服务
任务管理器 → 服务里看不到MySQL就说明成功了
1.2 下载MySQL安装包
这里用的是韩顺平老师教程的5.7.19版本,解压到选定的文件夹(最好不要有中文),要记住这个目录,后面会用到
解压之后得到这些内容,一定要检查一下bin文件夹里面有没有mysqld.exe,没有的话重新解压一下,不然后面无法执行mysqld指令
1.3 配置环境变量
配置环境变量是为了在dos系统中在系统中的任意目录都可以执行存放在某些特定位置下的指令,如果不配置环境变量每次都需要先用cd切换到安装的mysql的bin目录才可以执行mysql、mysqld相关指令
配完环境变量后cmd在任意目录都可以使用原本在bin中的mysql指令
右键此电脑,属性
在搜索框搜索高级系统设置,点击查看高级系统设置
选择高级 → 环境变量
在上面用户变量或者下面系统变量中找到Path,双击或者点击编辑→新建,然后将下载的mysql的bin目录粘贴进去
点击确定即可完成环境变量配置
1.4 创建my.ini文件
在mysql的安装根目录创建my.ini(注意修改后缀名,如果没有后缀名点查看,把文件拓展名勾勾打上),5.7.19版本没有my.ini配置文件,需要自己创建
用记事本打开,输入下面内容,注意最开始没有data目录,不要自己创建,后面会用指令生成
,跳过安全检查默认开启,不需要密码也能登录,后面会注释掉
[client]
port=3306
default-character-set=utf8
[mysqld]
# 设置为自己MYSQL的安装目录
basedir=D:\\software\mysql-5.7.19-winx64
# 设置为MYSQL的数据目录,这里data目录最开始并没有,不要自己创建!
datadir=D:\\software\mysql-5.7.19-winx64\data\
port=3306
character_set_server=utf8
#跳过安全检查
skip-grant-tables
配置my.ini中的小问题
如果你的MySQL目录是类似
D:\software
这种盘符下第一级目录名首字母是s的,需要把\
写成\\
,不然\s
会被解析成空格,需要使用转义字符转义一下\
1.5 使用指令生成data目录
使用管理员身份打开cmd,搜索cmd,右键以管理员身份运行
使用cd指令切换到bin目录
运行mysqld --initialize-insecure --user=mysql
如果出现这个报错,去my.ini里面把dir中的\
改成\\
,具体看1.4中的配置my.ini中的小问题
出现data文件夹并且里面有这三个文件夹说明初始化data目录成功
1.6 启动MySQL服务/关闭MySQL服务
在cmd中输入net start mysql
启动MySQL服务,尽量以管理员身份运行
在任务管理器→服务中能看到MySQL服务正在运行,说明启动成功
输入net stop mysql
停止MySQL服务,MySQL服务显示已停止说明停止成功
1.7 使用mysql -u root -p进入管理终端
初始没有密码,Enter password:直接按回车即可进入,出现mysql>
说明进入成功
1.8 设置MySQL密码
use mysql;
使用名为mysql的数据库,注意后面有分号
update user set authentication_string=password('xxxxxxx') where user='root' and Host='localhost';
其中xxxxxx设置为你的登录密码
flush privileges;
刷新权限
exit
退出MySQL终端,但并不会结束MySQL的服务
1.9 在my.ini中注释掉跳过安全检查
[client]
port=3306
default-character-set=utf8
[mysqld]
# 设置为自己MYSQL的安装目录
basedir=D:\\software\mysql-5.7.19-winx64
# 设置为MYSQL的数据目录,这里data目录最开始并没有,不要自己创建!
datadir=D:\\software\mysql-5.7.19-winx64\data\
port=3306
character_set_server=utf8
#跳过安全检查,只需要把下面这行前面加一个#就行,后面登录需要使用你刚刚设置的密码校验
#skip-grant-tables
1.10 重新启动MySQL服务
exit
退出mysql后依次执行
net stop mysql
net start mysql
1.11 重新进入MySQL
mysql -u root -p
输入刚刚设置的密码即可进入
总结
重新安装了一遍MySQL,也把一些细节详细记录了下来,希望以后MySQL不会坏掉
感谢各位大佬的批评指教~