这是一篇讲mysql完全卸载到正常使用的文章,恩就是这样,目录如下:
目录:
一、彻底删除mysql
二、重装mysql
三、重装时遇到的一些坑
最近公司需要开发一款基于Javaweb的程序软件,正好需要用到Mysql,因为不搞这个有段时间了,所以以为电脑没装过mysql,结果就出现冲突了,之前有装过,但没删,这次把原来的程序删了,具体删除、安装及一些坑如下。
一、彻底删除mysql
1、关闭mysql服务,控制面板找到管理工具里的服务,禁用mysql。
2、删除mysql,在控制面板里的删除程序就行,到这里就成功了一半。
3、最后,就是删除注册表了,
HKEY_LOCAL_MACHINE/SYSTEM/ControlSet001/Services/Eventlog/Application/MySQL
HKEY_LOCAL_MACHINE/SYSTEM/ControlSet002/Services/Eventlog/Application/MySQL
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Eventlog/Application/MySQL
以上三个有的都删除了就成。
二、重装mysql
1、进入官方网址:http://dev.mysql.com/downloads/mysql/
因为mysql坑很多,所以看了网上的建议,我下载的是老版本mysql-5.7.23-winx64,直接点击下载就好。
2、配置环境
将下载好的压缩包解压,打开解压后的bin目录,复制路径
配置计算机的环境变量,在系统变量的path直接添加刚刚复制的目录 。
3、复制my-default.ini,并重命名为my.ini,然后用记事本打开输入mysql的基本配置: 我下载的这个版本没有my-default.ini文件,方法:
直接百度了my.ini文件,在csdn下载了一个进行使用 。我的放在https://download.csdn.net/download/qq_40342174/10643364,有需要的可以下载来看看。
然后两个细节 一个是配置解压后的文件的安装地址, 还有一个是文字编码是uft-8格式 。
三、重装时遇到的一些坑
1、my.ini文件修改
如上重装软件的步骤。
2、修改密码
方法1: 用SET PASSWORD命令
首先登录MySQL。
格式:mysql> set password for 用户名@localhost = password('新密码');
例子:mysql> set password for root@localhost = password('123');
方法2:用mysqladmin
格式:mysqladmin -u用户名 -p旧密码 password 新密码
例子:mysqladmin -uroot -p123456 password 123 ;
方法3:用UPDATE直接编辑user表
首先登录MySQL。
mysql> use mysql;
mysql> update user set password=password('123') where user='root' and host='localhost';
mysql> flush privileges;
方法4:在忘记root密码的时候,可以这样
以windows为例:
- 关闭正在运行的MySQL服务。
- 打开DOS窗口,转到mysql\bin目录。
- 输入mysqld --skip-grant-tables 回车。--skip-grant-tables 的意思是启动MySQL服务的时候跳过权限表认证。
- 再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),转到mysql\bin目录。
- 输入mysql回车,如果成功,将出现MySQL提示符 >。
- 连接权限数据库: use mysql; 。
- 改密码:update user set password=password("123") where user="root";(别忘了最后加分号) 。
- 刷新权限(必须步骤):flush privileges; 。
- 退出 quit。
- 注销系统,再进入,使用用户名root和刚才设置的新密码123登录。
注:这里有个特别大的坑,就是mysql5.7改密码是用authentication_string,即
password字段改成了authentication_string;通过免密码登录的方式更改密码,输入update mysql.user set password=password('root') where user='root'时提示ERROR 1054 (42S22): Unknown column 'password' in 'field list',原来是mysql数据库下已经没有password这个字段了,所以更改语句替换为update MySQL.user set authentication_string=password('root') where user='root' ;即可
最后非常感谢,大家有问题也可以私信或在下方评论留言。