openEuler release 22.03 安装mysql8.0

 说明:

  openEuler release 22.03实际兼容centos8,所以openEuler release 22.03默认适配mysql8.0数据库。

下载mysql8.0的rpm安装包(根据cpu架构和系统,下载对应的版本)

https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.44-1.el8.x86_64.rpm-bundle.tar

 

解压

tar -xvf mysql-8.0.44-1.el8.x86_64.rpm-bundle.tar

# 1. 进入您解压出的RPM文件目录
cd /path/to/your/mysqlrpm

# 2. 按照严格的依赖顺序安装核心包(这是关键!)
sudo rpm -ivh mysql-community-common-*.rpm
sudo rpm -ivh mysql-community-client-plugins-*.rpm
sudo rpm -ivh mysql-community-libs-*.rpm
sudo rpm -ivh mysql-community-client-*.rpm
sudo rpm -ivh mysql-community-icu-data-files-*.rpm
sudo rpm -ivh mysql-community-server-*.rpm

# 3. 可选,安装其他工具(如devel包)
# sudo rpm -ivh mysql-community-devel-*.rpm

# 4. 获取并修改 root 初始密码
sudo grep 'temporary password' /var/log/mysqld.log

mysql -u root -p
# 登录后执行
ALTER USER 'root'@'localhost' IDENTIFIED BY '您的新强密码';

 

mysql8.0优化配置

[mysqld]
# ====== 基础与主从复制(可保留)======
server-id = 1
log-bin = mysql-bin
binlog_format = MIXED  # 或根据需求使用 ROW
expire_logs_days = 7
sync_binlog = 1
character-set-server = utf8mb4  # 强烈建议升级到utf8mb4
default-storage-engine = INNODB
lower_case_table_names = 1
max_connections = 3000  # 请根据实际压力测试调整,过高可能导致性能下降

# 设置默认时区为系统时区(中国常用)
default-time-zone = '+08:00'

# ====== 核心性能优化(必须修改!)======
# 内存配置:这是最关键的一项!请根据您的物理内存调整。
# 例如:16G内存可设置为 10G,8G内存可设置为 4-5G。
innodb_buffer_pool_size = 4G
# 使用独立的表空间文件,便于管理和备份
innodb_file_per_table = ON
# InnoDB日志文件大小:增大可提升写入性能。通常设置为缓冲池的 25%,上限为2GB。
innodb_log_file_size = 1G
innodb_log_buffer_size = 64M

# 开启慢查询日志,方便性能分析(生产环境建议开启)
slow_query_log = 1
slow_query_log_file = /var/log/mysqld-slow.log
long_query_time = 3  # 超过3秒的查询被记录
log_queries_not_using_indexes = 0  # 关闭记录未使用索引的查询,避免日志过大

# 连接与超时
wait_timeout = 600
interactive_timeout = 600
max_allowed_packet = 64M  # 如果业务涉及大字段(如图片、文本),建议增大到64M或更高

# SQL模式与事件
sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
# MySQL 8.0中已移除 NO_AUTO_CREATE_USER
event_scheduler = ON

# ====== 字符集(建议升级)======
# 在 [mysqld], [mysql], [client] 段均建议使用 utf8mb4
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci

[mysql]
default-character-set = utf8mb4

[client]
default-character-set = utf8mb4

 

posted @ 2026-01-19 15:23  大司徒  阅读(2)  评论(0)    收藏  举报