MariaDB在Ubuntu上的配置指南
sudo apt update && sudo apt upgrade -y,确保系统软件为最新版本,避免依赖冲突。sudo apt install mariadb-server mariadb-client -y,自动安装MariaDB核心服务及命令行工具。sudo systemctl start mariadb手动启动服务,sudo systemctl enable mariadb设置开机自动启动。sudo systemctl status mariadb,若显示“active (running)”则表示服务正常运行。sudo mysql_secure_installation,按提示完成以下关键操作:
sudo mysql -u root -p命令,输入root密码进入MariaDB命令行界面。/etc/mysql/mariadb.conf.d/50-server.cnf,使用文本编辑器(如sudo nano或sudo vim)打开。bind-address = 127.0.0.1,将其修改为bind-address = 0.0.0.0(允许所有IP访问)或指定服务器IP(限制访问范围);character-set-server = utf8mb4和collation-server = utf8mb4_general_ci,支持完整的Unicode字符(如emoji);innodb_buffer_pool_size = 2G(建议为服务器物理内存的50-70%,提升数据库性能);max_connections = 500(根据并发需求设置,避免资源耗尽)。sudo systemctl restart mariadb使配置生效。CREATE DATABASE mydb DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;,创建名为mydb的数据库,并设置默认字符集为utf8mb4。CREATE USER 'myuser'@'%' IDENTIFIED BY 'StrongPassword123!'(%表示允许从任意IP访问,生产环境建议限制为特定IP);GRANT ALL PRIVILEGES ON mydb.* TO 'myuser'@'%';(授予用户对mydb数据库的所有权限);FLUSH PRIVILEGES;(使授权立即生效)。若服务器开启了防火墙(如UFW),需开放MariaDB的默认端口(3306):
sudo ufw allow 3306/tcp允许TCP协议的3306端口;sudo ufw reload重新加载防火墙规则,使配置生效。使用数据库管理工具(如DBeaver、Navicat)测试远程连接:
myuser(步骤四创建的用户);StrongPassword123!'(步骤四设置的密码);mydb(步骤四创建的数据库)。若能成功连接,则说明远程访问配置正确。log-bin = /var/log/mysql/mariadb-bin和server-id = 1,用于主从复制(数据同步)。mysqlcheck --all-databases --optimize --auto-repair命令,优化表碎片,提升查询性能。mysqldump -u root -p mydb > mydb_backup.sql命令,定期备份数据库(建议每日备份),防止数据丢失。/var/log/mysql/mariadb-error.log(错误日志)和/var/log/mysql/mariadb-slow.log(慢查询日志),及时发现并解决问题。