1、下载地址:
https://dev.mysql.com/downloads/mysql/
2、环境变量
3、my.ini文件
首先可以看见安装目录下没有my.ini文件或者my-default.ini文件,于是自己在安装目录下创建一个my.ini文件,文件内容如下:
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=D:\\tools\mysql-8.0.11-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\\tools\mysql-8.0.11-winx64\Data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8
4、服务安装
使用管理员身份打开CMD窗口初始化安装
1、cd到D:\Program Files\MySQL\bin目录下
2、执行 mysqld --install mysql
此时你需要下载VC++2015运行包:
vc_redist.x64-VC2015运行库64位.exe: https://page86.ctfile.com/fs/10806086-214297222
vc_redist.x86-VC2015运行库32位.exe: https://page86.ctfile.com/fs/10806086-214296515
这两个地址亲测有效,如果不放心或者链接失效的话可以去百度或者我的CSDN上下载,顺便赏我一丢丢币.嘻嘻
vc_redist.x64-VC2015运行库64位.exe: https://download.csdn.net/download/ycxzuoxin/10518759
vc_redist.x86-VC2015运行库32位.exe: https://download.csdn.net/download/ycxzuoxin/10518739
最近很多人出现这个报错来问我的,我统一回复一下,这个是下面这个链接,我放百度云盘了,大家塞到自己的 C:\Windows\System32 路径下就好了
微软官方网站:https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads
百度云盘:https://pan.baidu.com/s/1tTjn5d00LCSpsTdTKYiNsw 提取码: hqtd
root@localhost: Y8wNdm7vr2=J (记住这个密码)
3、mysql服务安装
mysqld --install mysql
这里的mysql可以改为你想要自定义的,比如你机器上有很好几个mysql,你可以起名为mysql8
安装成功后,输出是这样的:
net start mysql 启动服务
4、修改密码
mysql -u root -p 连接mysql
要是忘记密码:
- 停止MySQL服务
net stop mysql
- 以管理员身份运行cmd,进入安装的mysql的bin目录下,如D:\Software\mysql-8.0.18-winx64\bin, 执行下面这句话,注意不要关掉此窗口
mysqld --console --skip-grant-tables --shared-memory
- 同样在bin目录下,新开一个管理员权限窗口,执行下面两句话
PS D:\Software\mysql-8.0.18-winx64\bin> mysql
mysql> use mysql
- 先将密码设置成空
update mysql.user set authentication_string="" where user="root";
flush privileges;
- 再修改密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
flush privileges;
- 使用 quit 退出命令,关闭掉步骤2的那个命令窗口,执行命令 net start mysql 启动服务,然后用新密码登录
mysql> quit
Bye
PS D:\Software\mysql-8.0.18-winx64\bin> net start mysql
PS D:\Software\mysql-8.0.18-winx64\bin> mysql -u root -p
Enter password: ******
......
mysql>
5、允许远程访问
然后查看下当前连接允许情况
select host, user, authentication_string, plugin from user;
我这里的输出如下:
mysql> select host, user, authentication_string, plugin from user;
+-----------+------------------+------------------------------------------------------------------------+-----------------------+
| host | user | authentication_string | plugin |
+-----------+------------------+------------------------------------------------------------------------+-----------------------+
| localhost | mysql.infoschema | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | caching_sha2_password |
| localhost | mysql.session | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | caching_sha2_password |
| localhost | mysql.sys | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | caching_sha2_password |
| localhost | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | mysql_native_password |
+-----------+------------------+------------------------------------------------------------------------+-----------------------+
4 rows in set (0.00 sec)
然后执行
CREATE USER 'root'@'%' IDENTIFIED BY 'root';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;
这个时候再查看下权限,输出如下
mysql> select host, user, authentication_string, plugin from user;
+-----------+------------------+------------------------------------------------------------------------+-----------------------+
| host | user | authentication_string | plugin |
+-----------+------------------+------------------------------------------------------------------------+-----------------------+
| % | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | mysql_native_password |
| localhost | mysql.infoschema | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | caching_sha2_password |
| localhost | mysql.session | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | caching_sha2_password |
| localhost | mysql.sys | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | caching_sha2_password |
| localhost | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | mysql_native_password |
+-----------+------------------+------------------------------------------------------------------------+-----------------------+
5 rows in set (0.00 sec)