window版mysql8安装


前言

mysql官方搭建文档:https://dev.mysql.com/doc/refman/8.0/en/


一、下载并解压

window版mysql下载:https://dev.mysql.com/downloads/mysql/
下载后解压并到要安装的目录下,我放到了C盘根目录下,以下以安装目录C:\mysql-8.0.25-winx64为例,安装版本为mysql-8.0.25。

安装目录

二、配置并安装

1.配置文件

在C:\mysql-8.0.25-winx64(mysql安装根目录以下简称“根目录”)下创建配置文件my.cnf(window下的配置文件也可命名为my.ini):

[client]
port=3306
default-character-set = utf8mb4

[mysqld]
# 为避免反斜杠被识别成转义字符使用双反斜杠
# 安装目录
basedir = C:\\mysql-8.0.25-winx64
# 数据库保存目录
datadir = C:\\mysql-8.0.25-winx64\\data
# 端口号
port = 3306
#socket=/tmp/mysql.sock
# key缓存
key_buffer_size=16M
# 接受的数据包的大小,在使用客户端备份还原的时候可能用到
max_allowed_packet=128M
# 错误日志,临时密码生成也在这里
log-error=error.log

# 编码
character-set-server = utf8mb4
collation_server = utf8mb4_general_ci

#default_authentication_plugin=mysql_native_password

sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'
# 下面是默认的sql_mode
#sql_mode='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'

[mysqldump]
quick

[mysqladmin]
force

MySQL 8.0连接认证使用 caching_sha2_password替换mysql_native_password 部分客户端连接可能报错,可以在配置文件中添加下面的配置:
default_authentication_plugin=mysql_native_password
或修改密码认证为之前的:
ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘password’;

2.初始化安装

生成的临时密码到data/error.log中:

注:mysql读取配置文件的顺序:
C:\Windows\my.ini C:\Windows\my.cnf C:\my.ini C:\my.cnf C:\mysql-8.0.25-winx64\my.ini C:\mysql-8.0.25-winx64\my.cnf

mysqld --initialize 

或 指定默认配置文件:

mysqld --defaults-file=C:\mysql-8.0.25-winx64\my.cnf --initialize

临时密码

以管理员身份安装mysql服务:

mysqld --install MySQL8 --defaults-file=C:\mysql-8.0.25-winx64\my.cnf

自动:mysqld --install
手动:mysqld --install-manual
移除:mysqld --remove 服务名

启动服务:

net start mysql8

关闭服务:net stop mysql8
启动报错:

发生系统错误193
确认根目录/bin下是否有跟mysqld同名的文件,删除即可。

需要删除的文件

登录并修改密码:

使用初始化时生成的临时密码登录:

mysql -u root -p

密码修改:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'root-password';

连接报错: Authentication plugin ‘caching_sha2_password’ cannot be loaded
使用如下命令:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root-password';

或修改配置文件(同上面1中注):

[mysqld]
default_authentication_plugin=mysql_native_password

搭建完成!

3.其他Mysql命令

字符编码查看:

SHOW CHARACTER SET;
SHOW COLLATION WHERE Charset = 'utf8mb4';

账户锁定 解锁:

ALTER USER 'jeffrey'@'localhost' ACCOUNT LOCK; 
ALTER USER 'jeffrey'@'localhost' ACCOUNT UNLOCK;

权限管理:

GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, CREATE ROLE, DROP ROLE ON *.* TO `root`@`localhost` WITH GRANT OPTION;
或:
GRANT ALL ON *.* TO `root`@`localhost` WITH GRANT OPTION;

权限查看:

SHOW GRANTS; 
SHOW GRANTS FOR CURRENT_USER; 
SHOW GRANTS FOR CURRENT_USER();
SHOW GRANTS FOR 'jeffrey'@'localhost';

角色创建与赋权限:

CREATE ROLE 'r1', 'r2'; 
GRANT SELECT ON db1.* TO 'r1'; 
GRANT INSERT, UPDATE, DELETE ON db1.* TO 'r2'; 
CREATE USER 'u1'@'localhost' IDENTIFIED BY 'u1pass'; 
GRANT 'r1', 'r2' TO 'u1'@'localhost';
SHOW GRANTS FOR 'u1'@'localhost';

目前使用角色给账号赋权限,登录可能不会生效还需要设置:(建议直接给账号赋权限)

Command-Line Format--activate-all-roles-on-login[={OFF|ON}]
System Variableactivate_all_roles_on_login
ScopeGlobal
DynamicYes
SET_VAR Hint AppliesNo
TypeBoolean
Default ValueOFF

配置文件中添加:

[mysqld]
activate_all_roles_on_login=on

创建账号并赋权限:

create user if not exists 'account'@'host' identified with mysql_native_password by 'password';
grant select,insert,update,delete on 指定数据库.指定表  to 'account'@'host';
flush privileges;

修改密码:

alter user 'zjf'@'%' identified with mysql_native_password by 'password';

MySQL8主从同步 https://blog.youkuaiyun.com/u013271384/article/details/130128882
Centos MySQL8 https://blog.youkuaiyun.com/u013271384/article/details/128140715

### 在 Windows 系统上安装 MySQL 8 #### 下载 MySQL Community Server 为了在 Windows 系统上安装 MySQL 8,首先需要访问官方下载页面获取最新本的 MySQL Community Server。可以通过以下链接进入下载页面:https://dev.mysql.com/downloads/mysql/ 。选择适合的操作系统架构(如 Win64 或 Win32),并点击 Download 开始下载 MSI 安装程序文件[^1]。 #### 配置用户环境变量 完成安装后,需配置系统的 PATH 环境变量以便能够在任意命令行窗口中调用 MySQL 工具。具体操作如下: - 打开“控制面板”,找到“系统和安全”下的“系统”选项。 - 进入高级系统设置中的“环境变量”部分,在“系统变量”列表里选中 `Path` 并编辑。 - 添加 MySQL bin 文件夹路径到 Path 中,通常位于 `C:\Program Files\MySQL\MySQL Server 8.0\bin` (视实际安装位置而定)。保存更改即可生效。 #### 修改 MySQL 默认设置 如果需要调整 MySQL 的默认行为或者优化性能参数,则可以编辑 my.ini/my.cnf 配置文件。此文件一般存放在 `%PROGRAMDATA%\MySQL\MySQL Server 8.0` 路径下。主要关注以下几个方面: - `[mysqld]` 部分定义数据库引擎运行时的各项设定; - 设置数据存储目录 datadir 和日志记录方式 log_error; - 可能还需要增加字符集支持 utf8mb4_general_ci 来兼容更多语言编码需求。 ```ini [mysqld] datadir=C:/ProgramData/MySQL/MySQL Server 8.0/Data/ port=3306 sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES character-set-server=utf8mb4 collation-server=utf8mb4_general_ci ``` #### 将 MySQL 注册为 Windows 系统服务 通过管理员权限打开 CMD 控制台切换至 MySQL 的 bin 目录,输入命令 `mysqld -install MySQL` 实现将 MySQL 守护进程注册成 windows service 功能[^4]。一旦成功执行该指令之后,就可以利用 net start / stop mysql 命令轻松管理其启停状态了。 #### 初始化与启动 MySQL 服务 初次安装完毕以后,应当先初始化数据库实例再正式启用服务端口监听外部连接请求。继续沿用之前提到过的 cmd 提权模式,尝试依次敲击下面两条语句: ```bash mysqld --initialize-insecure --user=mysql net start mysql ``` 上述第一条命令用于创建必要的表结构而不指定初始密码;第二条则是激活后台线程等待客户端接入。 #### 更改 root 用户登录凭证 出于安全性考虑,默认情况下新产生的超级管理员账户是没有预设密钥保护机制的,因此建议尽快自定义强健度较高的组合串作为验证依据。借助 SET PASSWORD 方法实现更新过程: ```sql ALTER USER 'root'@'localhost' IDENTIFIED BY 'YourNewPassword!'; FLUSH PRIVILEGES; ``` 最后确认一切正常运作无误的话,可试着重新连结看看效果如何:`mysql -u root -p` 输入刚才设立的新值即刻登入内部界面[^2]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值