在windows下安装mysql 8.1
1、下载并解压
官网下载mysql8,https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.11-winx64.zip
解压到D:\mysql, 以下称为根目录
2、编写配置文件
在根目录下新建my.ini文件, 配置以下内容
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录,一定要与上面的安装路径保持一致
basedir=D:\mysql
# 设置mysql数据库的数据的存放目录,自动生成,无需手动创建,当然也可以放在其他地方
datadir=D:\mysql\data
# 设置日志文件(需提前建立log文件夹)
log_error=D:\mysql\log\error.log
log_output=file
general_log=ON
general_log_file=D:\mysql\log\general.log
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为utf8mb4
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
#mysql_native_password 使用default_authentication_plugin=mysql_native_password是为了后续可以远程连接
default_authentication_plugin=mysql_native_password
#开启binlog日志(8.0默认开启)
#binlog-format=Row
#binlog保留时间设置为7天
#小于8.0的版本的设置参数
#8.0以上的也是这个设置(binlog_expire_logs_seconds被置为0)。
expire_logs_days=7
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4
[client]
# 设置mysql客户端连接服务端时默认使用的端口,不建议修改,这是公认端口号
port=3306
default-character-set=utf8mb4
3、初始化mysql
在根目录的bin目录下打开cmd,执行,大约20秒
mysqld --initialize --console
此处有个root随机的密码生成, 注意保留,后续用到。
4、创建mysql的windows服务
mysqld --install
检查服务创建情况, 无问题启动mysql服务
net start mysql
net stop mysql
5、修改初始密码
先连接到mysql
mysql -u root -p自动生成的密码
修改密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';
6、配置允许远程连接访问
use mysql;
#然后查看下当前连接允许情况
select host, user, authentication_string, plugin from user;
#可使用root从任何主机连接到mysql服务器
CREATE USER 'root'@'%' IDENTIFIED BY 'root';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码';
#授权生效
FLUSH PRIVILEGES;
#再查看下当前连接允许情况
select host, user, authentication_string, plugin from user;
使用dbeaver等工具连接测试。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?