在Linux系统下高效配置MySQL涉及多个步骤,包括安装、初始化、配置文件调整、性能优化等。以下是一个详细的指南:
sudo yum update -y
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpms
sudo yum localinstall mysql57-community-release-el7-11.noarch.rpm
sudo yum install mysql-community-server -y
sudo systemctl start mysqld
sudo systemctl enable mysqld
sudo systemctl status mysqld
sudo grep 'temporary password' /var/log/mysqld.log
mysql -u root -p
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword123!';
CREATE USER 'newuser'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent
sudo firewall-cmd --reload
/etc/my.cnf
或/etc/my.ini
):[mysqld]
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
innodb_buffer_pool_size = 1G
query_cache_size = 128M
max_connections = 400
innodb_file_per_table = 1
sudo systemctl restart mysqld
innodb_buffer_pool_size = 1G # 根据服务器内存调整
max_connections = 400 # 根据服务器资源调整
thread_cache_size = 8M
innodb_log_file_size = 256M
innodb_log_buffer_size = 64M
query_cache_size = 0
query_cache_type = 0
EXPLAIN
命令分析查询计划,找出没有利用索引的地方进行优化。EXPLAIN
查看查询执行计划,消除子查询,使用JOIN语句替代,以及避免在WHERE子句中使用不等操作符和函数。OPTIMIZE TABLE
命令优化表结构。