一、准备工作与系统选择
在VPS中部署独立数据库前,需确认服务器具备至少2GB内存和20GB存储空间。推荐选择Ubuntu/CentOS系统搭配MySQL 8.0或MariaDB 10.6版本,这两者均支持多实例运行模式且兼容主流的PHP/Python应用框架。
系统 | 内存占用 | 并发能力 |
---|---|---|
MySQL | 中等 | 500+连接 |
MariaDB | 较低 | 800+连接 |
二、创建独立数据库实例
通过以下步骤为两个网站创建隔离的数据库环境:
- 新建数据存储目录:
mkdir /var/lib/mysql-site1
mkdir /var/lib/mysql-site2
- 生成独立配置文件:
cp /etc/mysql/my.cnf /etc/mysql/site1.cnf
修改datadir和port参数 - 初始化数据库实例:
mysqld --defaults-file=/etc/mysql/site1.cnf --initialize-insecure
三、配置用户权限与访问规则
为每个数据库实例创建专属用户:
- 使用
CREATE USER
语句建立带IP限制的用户账号 - 通过
GRANT
命令分配最小必要权限 - 在防火墙设置端口白名单规则:
ufw allow 3306/tcp from 192.168.1.0/24
四、测试数据库连接
使用以下方法验证配置有效性:
mysql -u site1_user -p -h 127.0.0.1 -P 3307
SHOW DATABASES;
应只能看到该网站对应的数据库列表。通过netstat -tulpn
命令确认不同实例监听在独立端口。
通过多实例部署方案,可在单台VPS上实现数据库级别的资源隔离。该方法既能保证数据安全性,又能避免网站间的性能干扰,特别适合中小型项目的多站点托管需求。