windows环境搭建专栏🔗点击跳转
win系统环境搭建(四)——Windows安装mysql8压缩包版本
本系列windows环境搭建开始讲解如何给win系统搭建环境,本人所用系统是腾讯云服务器的Windows Server 2022,你可以理解成就是你用的windows10系统。我会尽量从Linux的视角去操纵win系统,以达到返璞归真的效果。我将会讲述:
- 如何安装jdk。
- 如何安装maven。
- 如何安装mysql8(我将使用压缩包安装)。
- 如何安装redis。
- 如何安装nginx。
- 如何使用nginx部署前后端分离的项目。
- 如何安装nvm以使用node和npm。
…
也许该系列会更多吧。
文章目录
- win系统环境搭建(四)——Windows安装mysql8压缩包版本
- 1.安装
- 1.1 下载
- 1.2 解压
- 2.配置
- 2.1 基本设置
- 2.1.1 文件夹重命名
- 2.1.2 配置环境变量
- 2.1.3 验证一下
- 3.初始化
- 3.1 配置文件
- 3.2 启动服务
- 3.3 修改密码
- 4.远程连接 MySQL
- 创建远程连接用户
1.安装
1.1 下载
关于wget可以看前面这一篇win系统环境搭建(一)——Windows安装一些小工具。
wget -P C:\Users\Administrator\Downloads https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.34-winx64.zip
1.2 解压
关于bz命令,需要你安装Bandzip,还是看前面这一篇win系统环境搭建(一)——Windows安装一些小工具。
bz x -o:"C:\Program Files" "C:\Users\Administrator\Downloads\mysql-8.0.34-winx64.zip"
这句命令 bz x -o:"C:\Program Files" "C:\Users\Administrator\Downloads\mysql-8.0.34-winx64.zip"
是使用 Bandizip 命令行工具 bz
来执行解压操作的命令。
bz
: 这是 Bandizip 命令行工具的可执行文件名。x
: 这是bz
命令的参数,表示执行解压操作。-o:"C:\Program Files"
: 这是bz
命令的-o
参数,后面跟着要指定的目标路径。在这个例子中,我们将解压的文件保存到目录C:\Program Files
中。注意,目标路径是用双引号括起来的,以防止路径中含有空格或特殊字符。"C:\Users\Administrator\Downloads\mysql-8.0.34-winx64.zip"
: 这是要解压的源文件的路径。在这个例子中,我们要解压的文件是C:\Users\Administrator\Downloads\mysql-8.0.34-winx64.zip
。
执行该命令将会使用 Bandizip 工具将 mysql-8.0.34-winx64.zip
文件解压到 C:\Program Files
目录中。确保在命令行中使用正确的路径和文件名。
2.配置
2.1 基本设置
2.1.1 文件夹重命名
进入C:\Program Files
cd C:\Program Files
重命名文件夹mysql-8.0.34-winx64为mysql8
ren mysql-8.0.34-winx64 mysql8
2.1.2 配置环境变量
打开环境变量(太小白了,这部分如果实在不会就看上一篇win系统环境搭建(二)——Windows安装JDK8,已经写过一遍了,写的很细了)。PATH点编辑,然后新建。
C:\Program Files\mysql8\bin
2.1.3 验证一下
cmd输入
mysql --version
我这里报了一个在Linux上没见过的错,那就遇见错误,解决错误。搜了一下,原因如此这是因为系统缺少动态链接库VCRUNTIME140_1.dll文件导致的,只要我们加一份dll文件到系统中就好。
害,只是缺了一个文件,没什么大不了的,那就用下面几个命令下载一下好了。
去官网下载:https://cn.dll-files.com/vcruntime140_1.dll.html
直接要最新的好了,然后将它解压到C:\Windows\System32
,我的vcruntime140_1.zip
下载完就在下载文件夹哦。浏览器默认下载文件夹,也不知道你的是不是。
bz x -o:"C:\Windows\System32" "C:\Users\Administrator\Downloads\vcruntime140_1.zip"
好了,我们再来一遍
mysql --version
mysql已经有了,下面开始启动它。
3.初始化
3.1 配置文件
在C:\Program Files\mysql8
下新建文件my.ini
和文件夹data
。
文件内容如下(用记事本编辑my.ini文件)
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4
[mysqld]
# 设置3306端口
port=3306
# 日志时间系统时间
log_timestamps=SYSTEM
# 默认时区东八区
default-time_zone='+8:00'
# 设置mysql的安装目录
basedir=C:\Program Files\mysql8
# 设置mysql数据库的数据的存放目录
datadir=C:\Program Files\mysql8\data
# 表名大小写不敏感
lower_case_table_names=1
# 服务端字符集
character-set-server=utf8mb4
# 自动提交所有事务
autocommit=1
# 跳过排它锁定
skip-external-locking
# 键缓存大小
key_buffer_size=1024M
# 允许的最大数据包大小
max_allowed_packet=2M
# 表缓存
table_open_cache=1024
# 排序缓存大小
sort_buffer_size=16M
# 网络缓冲区长度
net_buffer_length=8K
# 读取缓冲区大小
read_buffer_size=4M
# 随机读取缓冲区大小
read_rnd_buffer_size=512K
# MyISAM 排序缓冲区大小
myisam_sort_buffer_size=128M
# 线程缓存大小
thread_cache_size=256
# 临时表大小
tmp_table_size=256M
# 启用显式默认时间戳
explicit_defaults_for_timestamp=true
# 最大连接数
max_connections=3000
# 连接错误最大数量
max_connect_errors=100
# 打开文件限制
open_files_limit=65535
# 二进制日志格式
binlog_format=mixed
# 二进制日志过期时间(秒)
binlog_expire_logs_seconds=864000
# 创建表时使用的默认存储引擎
default_storage_engine=InnoDB
# InnoDB 数据文件路径设置
innodb_data_file_path=ibdata1:10M:autoextend
# InnoDB 缓冲池大小
innodb_buffer_pool_size=2G
# InnoDB 日志文件大小
innodb_log_file_size=512M
# InnoDB 日志缓冲区大小
innodb_log_buffer_size=16M
# InnoDB 每次提交时刷新日志
innodb_flush_log_at_trx_commit=1
# InnoDB 加锁等待超时时间(秒)
innodb_lock_wait_timeout=50
# 事务隔离级别为读已提交
transaction-isolation=READ-COMMITTED
# 默认使用 "mysql_native_password "插件认证
default_authentication_plugin=mysql_native_password
[mysqldump]
# 快速导出数据
quick
# 允许的最大数据包大小
max_allowed_packet=16M
[myisamchk]
# 键缓存大小
key_buffer_size=256M
# 排序缓冲区大小
sort_buffer_size=4M
# 读取缓冲区大小
read_buffer=2M
# 写入缓冲区大小
write_buffer=2M
[mysqlhotcopy]
# 交互式超时时间
interactive-timeout
保存。
3.2 启动服务
安装 MySQL服务
mysqld --install
无密码初始化
mysqld --initialize-insecure
启动mysql
net start mysql
3.3 修改密码
登录
mysql -u root --skip-password
修改密码,这里设置你的第一个密码,一定不要忘记哦。
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
设置密码永不过期(本地)
alter user 'root'@'localhost' password expire never;
刷新权限
FLUSH PRIVILEGES;
4.远程连接 MySQL
创建远程连接用户
选择 mysql 数据库,查看当前用户
USE mysql;
host 字段表示可访问当前数据库的主机,目前仅本地可访问。
SELECT user,host,plugin,authentication_string FROM user;
创建用户
CREATE user 'root'@'%';
设置首次密码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';
授权用户所有权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
设置密码永不过期(远程)
alter user 'root'@'%' password expire never;
刷新权限
FLUSH PRIVILEGES;
最后,如果还是远程连不上,那就是防火墙的问题,可以查查如何关闭防火墙,或者是win系统开放3306端口的方法,我这个腾讯云本身防火墙就没开,所以就不演示了,这个远程开放以后,就可以被远程的电脑连接时你的MySQL了。
如图,我本地的电脑,就可以连上这个远在上海的腾讯云服务器的MySQL。