解决Debian系统下MariaDB连接问题,可按以下步骤排查操作:
检查服务状态
确保MariaDB服务已启动:
sudo systemctl status mariadb
若未启动,使用以下命令启动:
sudo systemctl start mariadb
验证配置文件
编辑配置文件 /etc/mysql/mariadb.conf.d/50-server.cnf,确认 bind-address 设置为 0.0.0.0(允许远程连接),修改后重启服务:
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
sudo systemctl restart mariadb
配置防火墙
若使用 ufw,开放MariaDB默认端口(3306):
sudo ufw allow 3306/tcp
创建远程用户并授权
登录MariaDB,创建允许远程访问的用户并授予权限:
CREATE USER 'username'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'username'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
(注:'%' 表示允许所有主机,生产环境建议指定具体IP)
测试连接
使用命令行工具测试连接:
mysql -h 主机IP -u 用户名 -p
若仍失败,查看错误日志(路径:/var/log/mysql/ 或 /var/log/mariadb/)排查具体原因。
注意:修改配置前建议备份数据,生产环境需谨慎操作权限和端口设置。