centos

centos mysql使用技巧

小樊
50
2025-08-24 15:19:11
栏目: 云计算

以下是CentOS下MySQL的使用技巧,涵盖安装、配置、优化及管理等方面:

一、基础安装与配置

  1. 安装MySQL

    • 添加官方YUM源并安装:
      sudo yum install -y https://repo.mysql.com/mysql57-community-release-el7-11.noarch.rpm  
      sudo yum install -y mysql-community-server  
      
    • 启动服务并设置开机自启:
      sudo systemctl start mysqld  
      sudo systemctl enable mysqld  
      
  2. 安全初始化

    • 运行安全脚本,设置root密码、删除匿名用户及测试库:
      sudo mysql_secure_installation  
      

二、核心配置技巧

  1. 配置文件优化(/etc/my.cnf)

    • 内存分配
      innodb_buffer_pool_size = 1G  # 建议为物理内存的50%-80%  
      innodb_log_file_size = 256M   # 日志文件大小,影响性能  
      
    • 连接数与日志
      max_connections = 500         # 根据服务器负载调整  
      slow_query_log = ON           # 开启慢查询日志  
      long_query_time = 1           # 慢查询阈值(秒)  
      
  2. 远程访问配置

    • 修改bind-address=0.0.0.0允许远程连接,并通过防火墙放行3306端口:
      sudo firewall-cmd --add-port=3306/tcp --permanent  
      sudo firewall-cmd --reload  
      

三、性能优化技巧

  1. 索引优化

    • 为高频查询字段创建索引,避免全表扫描:
      CREATE INDEX idx_name ON users(name);  
      
    • 使用EXPLAIN分析查询计划,优化低效SQL:
      EXPLAIN SELECT * FROM orders WHERE user_id = 100;  
      
  2. 查询与表优化

    • 避免SELECT *,只查询必要字段;使用LIMIT限制返回行数。
    • 定期优化表,减少碎片:
      sudo mysqlcheck -o -u root -p database_name  
      

四、管理与维护技巧

  1. 备份与恢复

    • 全库备份:
      sudo mysqldump -u root -p --all-databases > all_backup.sql  
      
    • 恢复数据库:
      mysql -u root -p < backup.sql  
      
  2. 监控与日志

    • 查看实时状态:
      mysqladmin -u root -p status  
      mysqladmin -u root -p processlist  # 查看当前进程  
      
    • 分析慢查询日志:
      sudo grep "Slow query" /var/log/mysql-slow.log  
      

五、安全增强技巧

  1. 权限管理

    • 遵循最小权限原则,仅为用户分配必要权限:
      GRANT SELECT, INSERT ON db_name.* TO 'user'@'host';  
      FLUSH PRIVILEGES;  
      
  2. 数据加密与审计

    • 对敏感字段(如密码)使用AES_ENCRYPT加密存储。
    • 启用通用查询日志(需谨慎,影响性能):
      general_log = ON  
      general_log_file = /var/log/mysql-general.log  
      

六、常见问题处理

以上技巧可根据实际业务场景灵活调整,操作前建议备份数据。参考来源:

0
看了该问题的人还看了