我之前一直用的是安装版的,后来下载免安装版的,各种配置都是各种报错,从网上找的解决方案基本回答都是一模一样,谁扒谁的也无从查证了,用了之后基本没有解决问题。经历了一下午的研究,终于给解决了。
免安装版的下载地址: mysql免安装下载地址
1. 选择第一个下载,下载龟速,我开了梯子也慢,慢慢等吧~~
2. 下载完之后解压到文件夹下,注意不要有中文
3. 在根目录下新建一个my.ini的文件
4. 复制以下配置文件到my.ini里
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=D:\Program\mysql\mysql-5.7.26-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\Program\mysql\mysql-5.7.26-winx64\data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 跳过数据库权限验证 不配置会报错
skip-grant-tables
# 该项不配置会报错 报错信息:TIMESTAMP with implicit DEFAULT value is deprecated
explicit_defaults_for_timestamp=true
5. 配置环境变量
双击打开它,新建输入你的mysql 完整的bin目录 我的是
6. 以管理员身份运行 cmd
点击搜索cmd,找到命令行程序点击以管理员身份运行
7. cmd命令行运行
C:\Windows\system32>mysqld -install
Service successfully installed.
C:\Windows\system32>net start mysql
MySQL 服务正在启动 .
MySQL 服务无法启动。
服务没有报告任何错误。
请键入 NET HELPMSG 3534 以获得更多的帮助。
//原因:mysql没有进行初始化...
D:\Program\mysql\mysql-5.7.26-winx64\bin> mysqld --initialize
D:\Program\mysql\mysql-5.7.26-winx64\bin>net start mysql
MySQL 服务正在启动 .
MySQL 服务已经启动成功。
D:\Program\mysql\mysql-5.7.26-winx64\bin>mysql -h localhost -u root -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
//原因:my.ini文件没有增加 skip-grant-tables
//参考文档: https://blog.csdn.net/qq_36675754/article/details/81381341
//添加完之后,重启mysql:
D:\Program\mysql\mysql-5.7.26-winx64\bin>net stop mysql
MySQL 服务正在停止.
MySQL 服务已成功停止。
D:\Program\mysql\mysql-5.7.26-winx64\bin>net start mysql
MySQL 服务正在启动 .
MySQL 服务已经启动成功。
D:\Program\mysql\mysql-5.7.26-winx64\bin>mysql -h localhost -u root -p
Enter password:
mysql> use mysql
Database changed
mysql> update user set password=PASSWORD("123456") where user='root';
ERROR 1054 (42S22): Unknown column 'password' in 'field list'
//原因: 5.7版本下的mysql数据库下已经没有password这个字段了,password字段改成了authentication_string
mysql> update mysql.user set authentication_string=password('123456') where user='root';
Query OK, 1 row affected, 1 warning (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 1
注意:密码不能为root
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
mysql> quit
Bye
D:\Program\mysql\mysql-5.7.26-winx64\bin>net stop mysql
MySQL 服务正在停止.
MySQL 服务已成功停止。
D:\Program\mysql\mysql-5.7.26-winx64\bin>net start mysql
MySQL 服务正在启动 .
MySQL 服务已经启动成功。
D:\Program\mysql\mysql-5.7.26-winx64\bin>mysql -h localhost -u root -p
Enter password: ****
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.26
mysql>
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
请登录后查看评论内容