温馨提示×

如何配置Linux MariaDB

小樊
81
2025-08-15 13:53:21
栏目: 云计算

以下是Linux环境下配置MariaDB的核心步骤,涵盖安装、安全设置及参数优化:

一、安装MariaDB

  1. 更新系统并安装

    • Debian/Ubuntu:
      sudo apt update && sudo apt install mariadb-server  
      
    • CentOS/RHEL:
      sudo yum install mariadb-server  
      

    安装后服务会自动启动。

  2. 运行安全脚本

    sudo mysql_secure_installation  
    

    按提示设置root密码、删除匿名用户、禁止root远程登录等。

二、配置MariaDB

  1. 编辑配置文件

    • 主配置文件路径:
      • Debian/Ubuntu:/etc/mysql/mariadb.conf.d/50-server.cnf
      • CentOS/RHEL:/etc/my.cnf/etc/my.cnf.d/server.cnf
    • 常用配置项(需重启服务生效):
      [mysqld]  
      character-set-server=utf8mb4  # 设置字符集  
      collation-server=utf8mb4_unicode_ci  
      innodb_buffer_pool_size=2G     # 缓存池大小(建议为物理内存50-70%)  
      max_connections=500            # 最大连接数  
      log-bin=/var/log/mysql/mariadb-bin  # 启用二进制日志(用于主从复制)  
      server-id=1                    # 主服务器ID(主从复制场景)  
      bind-address=0.0.0.0           # 允许远程访问(设为0.0.0.0,生产环境需限制IP)  
      
    • 保存后重启服务:
      sudo systemctl restart mariadb  
      
  2. 验证配置
    登录MariaDB后执行:

    SHOW VARIABLES LIKE 'character_set_server';  # 检查字符集  
    SHOW VARIABLES LIKE 'innodb_buffer_pool_size'; # 检查缓存大小  
    

三、高级配置(可选)

  • 远程访问

    1. 确保bind-address0.0.0.0,并开放防火墙端口(如3306):
      sudo ufw allow 3306/tcp  # Ubuntu  
      sudo firewall-cmd --add-port=3306/tcp --permanent  # CentOS  
      
    2. 创建远程用户并授权:
      CREATE USER 'remote_user'@'%' IDENTIFIED BY '密码';  
      GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'%' WITH GRANT OPTION;  
      FLUSH PRIVILEGES;  
      
  • 主从复制配置
    在主服务器配置log-binserver-id,从服务器配置relay-logserver-id,并使用CHANGE MASTER TO命令同步数据。

四、常用管理命令

  • 启动/停止服务:
    sudo systemctl start/stop mariadb  
    sudo systemctl enable mariadb  # 设置开机自启  
    
  • 备份数据库:
    mysqldump -u root -p 数据库名 > backup.sql  
    
  • 查看状态:
    sudo systemctl status mariadb  
    

注意事项

  • 生产环境需关闭skip-networking并限制bind-address仅允许可信IP访问。
  • 定期监控日志文件(/var/log/mysql/error.log)和性能指标(如SHOW STATUS)。

参考来源:

0