雨云云服务器装 MySQL 与 Redis 实战:建库授权、远程连接与自动备份

从安装到每天自动备份,把 MySQL 和 Redis 在雨云云服务器上稳稳跑起来
发布于
5

为什么数据库要单独讲

前面几篇讲了怎么在雨云云服务器上部署网站、Python 后端、Docker 容器,但它们大多默认用了自带或容器里的数据库。真正生产环境里,MySQL(关系型)和 Redis(缓存/内存库)几乎是标配。把数据库单独装好、配稳、能备份,是站点和接口不丢数据的前提。本文就在你已有的雨云 KVM 云服务器上,把这两个库跑起来。

一、服务器与购买

跑 MySQL 比纯静态站吃内存,建议 2 核 2G 起步;如果库里数据量大或并发高,4G 更稳。系统选 Ubuntu 22.04。购买走 雨云专属入口 jiyueip.com/link/5617 填优惠码 admin01 享五折,国内节点建站记得备案。

二、安装 MySQL

sudo apt update
sudo apt install -y mysql-server
sudo mysql_secure_installation

安全初始化里会让你设 root 密码、移除匿名用户、禁止 root 远程登录,全部选 Y 即可。验证:sudo mysql -uroot -p 能进命令行就成功了。

三、创建库、用户与授权

不要拿 root 直接给应用用,单独建库建用户:

CREATE DATABASE appdb CHARACTER SET utf8mb4;
CREATE USER 'appuser'@'localhost' IDENTIFIED BY '强密码';
GRANT ALL PRIVILEGES ON appdb.* TO 'appuser'@'localhost';
FLUSH PRIVILEGES;

应用和数据库在同一台机器时,用户主机写 localhost 最安全。如果应用在另一台雨云机器,把 ‘appuser’@’localhost’ 换成 ‘appuser’@’应用机内网IP’,并在安全组只放行内网。

四、Redis 安装与基础配置

sudo apt install -y redis-server

改 /etc/redis/redis.conf:bind 127.0.0.1(只允许本机)、requirepass 你的密码(防未授权访问)。重启 sudo systemctl restart redis。用 redis-cli 连上后 auth 密码、ping 返回 PONG 即正常。

五、自动备份

MySQL 备份用 mysqldump,写个脚本 /root/backup/mysql.sh:

#!/bin/bash
DATE=$(date +%F)
mysqldump -uappuser -p密码 appdb | gzip > /root/backup/appdb_$DATE.sql.gz
find /root/backup -name '*.sql.gz' -mtime +7 -delete

加执行权限后,用 crontab -e 加一行 0 3 * * * /root/backup/mysql.sh,每天凌晨 3 点备份并保留 7 天。Redis 如果开了持久化(RDB/AOF),把对应 dump 文件一并打包即可。

六、恢复数据

恢复很简单:gunzip 解压后 mysql -uappuser -p appdb < appdb_日期.sql。恢复前最好先备份当前库,避免覆盖错。

合规使用提醒

数据库仅用于存储你合法业务的数据。若数据库中包含用户个人信息,须遵守《个人信息保护法》,做好访问控制与加密存储,不得泄露或非法买卖。国内节点对外提供数据库服务须符合相关备案与安全管理要求。

常见问题(FAQ)

MySQL 用户主机写 localhost 还是 IP?
应用和数据库在同一台雨云机器,写 localhost 最安全,连的是本地 socket 不经过网络。应用在另一台机器时,才写对方内网 IP,并在安全组只放行内网。
Redis 为什么要设密码和 bind 127.0.0.1?
Redis 默认无密码且监听所有网卡,暴露公网会被别人连上去清空或勒索。bind 127.0.0.1 只允许本机连,requirepass 再加一道密码,双保险。
数据库备份要备份哪些?
MySQL 用 mysqldump 导出库,Redis 若开了 RDB/AOF 就打包它的 dump 文件。建议备份脚本连同恢复说明一起存,并且异地存一份(如对象存储)。
备份频率怎么定?
数据变动频繁的库每天一次,变动少的每周也行。关键业务建议每天凌晨全备 + 二进制日志增量,出问题时能恢复到最近时间点。

本文由作者原创/授权发布于极跃圈(jiyueip.com)未经许可,禁止转载。题图来自Unsplash,基于CC0协议。

声明:极跃圈(JIYUEIP.com)内网友所发表的所有内容及言论仅代表其本人,并不反映任何极跃圈(JIYUEIP.com)之意见及观点。

0 讨论
热门最新
总结
暂无总结
0 / 600