🔥【2025年8月最新消息】CentOS生态大更新!
根据官方消息,CentOS 7已进入维护末期,建议尽快迁移至CentOS 9 Stream或国产OpenEuler 24.03 LTS系统,特别提醒:采用鲲鹏/飞腾芯片的服务器,OpenEuler性能提升可达30%!Docker镜像加速服务新增国内源(如https://docker.1panel.live),拉取速度提升10倍!🚀
你是否遇到过这样的情况:本地数据库运行良好,但远程连接时却提示“连接被拒绝”?别担心!本文将手把手教你如何在CentOS 9系统中配置MySQL和PostgreSQL的远程访问,附赠防火墙设置、用户权限调整等实用技巧,让你轻松实现远程数据库管理!💻
# 添加MySQL官方仓库 sudo yum install -y https://repo.mysql.com/mysql80-community-release-el9-1.noarch.rpm # 安装MySQL社区版 sudo yum install -y mysql-community-server # 启动并设置开机自启 sudo systemctl start mysqld sudo systemctl enable mysqld
sudo vi /etc/my.cnf
在[mysqld]
部分添加:
bind-address = 0.0.0.0 # 允许所有IP访问 skip-name-resolve = 1 # 禁用DNS解析,提升性能
# 开放3306端口(TCP) sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent sudo firewall-cmd --reload
# 获取临时root密码 sudo grep 'temporary password' /var/log/mysqld.log # 登录MySQL并修改密码 mysql -uroot -p ALTER USER 'root'@'localhost' IDENTIFIED BY 'YourStrongPassword123!'; # 创建远程用户并授权 CREATE USER 'remote_user'@'%' IDENTIFIED WITH mysql_native_password BY 'RemotePass123!'; GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'%' WITH GRANT OPTION; FLUSH PRIVILEGES;
sudo vi /var/lib/pgsql/15/data/postgresql.conf
找到#listen_addresses = 'localhost'
,修改为:
listen_addresses = '*' # 监听所有IP
sudo vi /var/lib/pgsql/15/data/pg_hba.conf
在文件末尾添加:
host all all 0.0.0.0/0 md5
sudo systemctl restart postgresql-15 # 开放5432端口(TCP) sudo firewall-cmd --zone=public --add-port=5432/tcp --permanent sudo firewall-cmd --reload
sudo -u postgres psql ALTER USER postgres WITH PASSWORD 'YourStrongPassword123!';
# 查看防火墙状态 sudo systemctl status firewalld # 开放多个端口(示例:80,443,3000-3010) sudo firewall-cmd --add-port={80,443,3000-3010}/tcp --permanent sudo firewall-cmd --reload
sudo firewall-cmd --list-ports
检查已开放端口sudo systemctl start firewalld
sudo firewall-cmd --reload
重载配置原因:防火墙未开放3306端口或MySQL未配置bind-address=0.0.0.0
解决:检查配置文件与防火墙规则,重启服务:
sudo systemctl restart mysqld
原因:pg_hba.conf
未正确配置或密码未设置
解决:确认添加host all all 0.0.0.0/0 md5
,并使用ALTER USER
设置密码。
优化技巧:
/etc/resolv.conf
顶部添加:options single-request-reopen
echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf sudo sysctl -p
通过本文,你已掌握:
建议定期检查系统安全,限制数据库访问IP,并启用SSL加密连接(如PostgreSQL的ssl = on
配置),立即动手实践,让你的数据库轻松实现远程访问吧!🚀
💡 小贴士:使用netstat -tuln
命令可实时查看端口监听状态,助你快速定位连接问题!
本文由 业务大全 于2025-08-21发表在【云服务器提供商】,文中图片由(业务大全)上传,本平台仅提供信息存储服务;作者观点、意见不代表本站立场,如有侵权,请联系我们删除;若有图片侵权,请您准备原始证明材料和公证书后联系我方删除!
本文链接:https://xdh.7tqx.com/wenda/681432.html
发表评论