MYSQL5.7 ZIP版本安装及相关问题解决

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/damage_e/article/details/77603325

对于mysql5.7以后版本,没有了my.ini文件,这里要自己新建。


安装过程:

1、解压zip文件。例如D:\ProgramFile\mysql-5.7.19-winx64

2、添加环境变量。D:\ProgramFile\mysql-5.7.19-winx64\bin到path下面。

3、在D:\ProgramFile\mysql-5.7.19-winx64中新建my.ini文本文件。

里面内容如下:

# =============start============

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8 
[mysqld]
#设置3306端口
port=3306 
# 设置mysql的安装目录
basedir=D:\ProgramFile\mysql-5.7.19-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\ProgramFile\mysql-5.7.19-winx64\data
# 允许最大连接数
max_connections=100
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 免密码登陆
skip-grant-tables

# ================end===================

4、使用管理员身份打开控制台cmd.

切换到目录D:\ProgramFile\mysql-5.7.19-winx64\bin下,运行以下代码:

 mysqld --initialize
 mysqld -install
 net start mysql

5、登陆root用户,

 mysql -u -root
(因为my.ini文件最后一行有“skip-grant-tables”)
登陆提示输入密码时,直接按enter键进入。

6、设置自己的root密码。

进入mysql后:
mysql> use mysql;
Database changed
mysql> update user set password=password("新密码") where user="root";
这里可能会出现如下问题:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '("mysql") where user="root"' at line 1

这是因为原来是mysql数据库下已经没有password这个字段了,password字段改成了authentication_string

所以如果出现以上 问题要将update语句改为:

mysql> update user set authentication_string=password("新密码") where user="root";

Query OK, 1 rows affected (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0

密码设置成功!

7、刷新数据库及退出mysql.

mysql> flush privileges;

mysql> quit;

8、要想使设置的密码有效要注释掉(删除)my.ini这个文件中的“skip-grant-tables”,保存退出再重启mysql就可以了。


总结:
对于网上各种忘记mysql密码的解决方法,网上有(mysqld-nt --skip-grant-tables;命令开启免密模式,总是出现卡在进程里,无法完成)所以这里最好 使用以上方法:
1、在my.ini文件中添加“skip-grant-tables”。
2、重新启动mysql,后免密进入mysql.
3、use mysql;
update user set password=password("新密码") where user="root";
(或update user set authentication_string=password("新密码") where user="root";)
4、

要想使设置的密码有效要注释掉(删除)my.ini这个文件中的“skip-grant-tables”,保存退出再重启mysql就可以了。


猜你喜欢

转载自blog.csdn.net/damage_e/article/details/77603325