【MySQL】解压安装

1、解压缩

解压MySql压缩包到 D:\dev\env\mysql-8.4.2-winx64

2、初始化数据目录

进入 cd D:\dev\env\mysql-8.4.2-winx64\bin

mysqld --initialize --console

命令执行完毕后会在解压目录下生成一个data文件夹,注意收集生成的随机密码,会出现在dos窗口中,如:*J<Etw#aS5ym。登录要用

3、在根目录创建配置文件 my.ini

[mysqld]
# 设置3306端口
port=3306

# 自定义设置mysql的安装目录,即解压mysql压缩包的目录
basedir=D:\dev\env\mysql-8.4.2-winx64

# 自定义设置mysql数据库的数据存放目录
datadir=D:\dev\env\mysql-8.4.2-winx64\data

# 允许最大连接数
max_connections=10000

# 设置页大小128K
innodb_page_size=131072

# 允许连接失败的次数,这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10

# 服务端使用的字符集默认为utf8mb4
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci

# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

# 默认使用“mysql_native_password”插件认证
mysql_native_password=ON

# 时区
default-time-zone='+8:00'
sql_mode=''
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4

[client]
# 设置mysql客户端连接服务端时默认使用的端口和默认字符集
port=3306
default-character-set=utf8mb4

4、安装服务、删除服务

mysqld.exe --install

默认服务名称是MySQL,或者通过  mysqld.exe --install "MySQL8" 指定服务名称

mysqld.exe --remove

删除默认服务名称,或者通过 mysqld.exe --remove "MySQL8" 删除指定服务名称

5、启动服务、停止服务

使用创建的服务名称

net start MySQL
net stop MySQL

6、设置 root 用户密码

使用步骤二收集的随机密码登录

mysql -u root -p

旧加密方式 mysql_native_password

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

新加密方式 caching_sha2_password

ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
ALTER USER 'root'@'%' IDENTIFIED BY '123456';

7、添加新用户

CREATE USER 'ycx'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
GRANT ALL PRIVILEGES ON *.* TO 'ycx'@'%';

8、可能错误

8.4.2版本会报错
[ERROR] [MY-000067] [Server] unknown variable 'default_authentication_plugin=mysql_native_password'.

把语句中的 default_authentication_plugin=mysql_native_password 换为 在配置文件中设置  mysql_native_password=ON

9、常用操作

版本

select version();

时区

show variables like '%time_zone%'
set global time_zone ‘+8:00’;

时间

select now();

日志

select DATE_FORMAT(now(), '%Y-%m-%d %H:%i:%s')
show variables like '%log_bin%';

最大链接

set GLOBAL max_connections = 9000;
show variables like '%max_connections%';

接受的数据包大小sql大小

show VARIABLES like '%max_allowed_packet%';
set global max_allowed_packet = 2*1024*1024*10

 

posted @ 2025-05-26 17:26  谷粒-笔记  阅读(83)  评论(0)    收藏  举报