阅读量:3
Ubuntu环境配置数据库服务指南(以MySQL和PostgreSQL为例)
一、MySQL数据库配置步骤
1. 准备工作
- 更新系统包列表并升级现有软件包,确保系统环境最新:
sudo apt update && sudo apt upgrade -y - 安装常用工具(可选但推荐):
sudo apt install -y vim curl wget
2. 安装MySQL服务器
- 使用APT包管理器安装MySQL(自动添加官方仓库):
sudo apt install mysql-server -y - 安装过程中会提示设置root用户密码,请使用强密码(包含大小写字母、数字和特殊字符)。
3. 初始化配置
- 运行安全配置向导,强化数据库安全性:
按提示完成以下操作:sudo mysql_secure_installation- 设置root用户密码(若未设置);
- 删除匿名用户;
- 禁止root用户远程登录;
- 删除测试数据库;
- 重新加载权限表。
4. 启动与开机自启
- 启动MySQL服务:
sudo systemctl start mysql - 设置开机自动启动:
sudo systemctl enable mysql - 验证服务状态:
sudo systemctl status mysql # 应显示“active (running)”
5. 登录与基本配置
- 使用root用户登录MySQL:
sudo mysql -u root -p - 修改root用户密码(可选,若初始密码复杂可跳过):
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewStrongPassword123!'; FLUSH PRIVILEGES; - 创建专用数据库和用户(推荐):
-- 创建数据库 CREATE DATABASE mydatabase CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; -- 创建用户并设置密码 CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'UserPassword123!'; -- 授权用户访问数据库 GRANT ALL PRIVILEGES ON mydatabase.* TO 'myuser'@'localhost'; -- 刷新权限 FLUSH PRIVILEGES; -- 退出 EXIT;
6. 远程访问配置(可选,生产环境需谨慎)
- 编辑MySQL配置文件,允许远程连接:
找到sudo nano /etc/mysql/mysql.conf.d/mysqld.cnfbind-address = 127.0.0.1,修改为:bind-address = 0.0.0.0 - 重启MySQL服务:
sudo systemctl restart mysql - 创建远程访问用户(限制IP更安全,如
192.168.1.%):CREATE USER 'remoteuser'@'192.168.1.%' IDENTIFIED BY 'RemotePassword123!'; GRANT ALL PRIVILEGES ON mydatabase.* TO 'remoteuser'@'192.168.1.%'; FLUSH PRIVILEGES;
7. 防火墙配置
- 允许MySQL默认端口(3306):
sudo ufw allow 3306/tcp sudo ufw enable # 若未启用防火墙
8. 常用管理命令
- 备份数据库:
mysqldump -u myuser -p mydatabase > mydatabase_backup.sql - 恢复数据库:
mysql -u myuser -p mydatabase < mydatabase_backup.sql - 查看MySQL状态:
sudo systemctl status mysql - 查看错误日志:
sudo tail -f /var/log/mysql/error.log
二、PostgreSQL数据库配置步骤
1. 准备工作
- 同MySQL准备步骤(更新系统、安装工具)。
2. 安装PostgreSQL
- 安装PostgreSQL及附加模块(如
postgresql-contrib提供额外功能):sudo apt install postgresql postgresql-contrib -y - 安装完成后,PostgreSQL服务自动启动,默认管理员用户为
postgres。
3. 验证安装
- 检查PostgreSQL版本:
psql --version # 输出类似“psql (PostgreSQL) 16.2 (Ubuntu 16.2-1.pgdg24.04+1)” - 验证服务状态:
sudo systemctl status postgresql # 应显示“active (running)”
4. 登录与基本配置
- 切换到
postgres用户并进入PostgreSQL命令行:sudo -u postgres psql - 修改
postgres用户密码:ALTER USER postgres WITH ENCRYPTED PASSWORD 'StrongPostgresPassword123!'; \q # 退出 - 创建专用数据库和用户:
# 创建数据库 sudo -u postgres createdb mydatabase # 创建用户 sudo -u postgres createuser --interactive # 按提示输入用户名,选择“超级用户”(若需) # 设置用户密码 sudo -u postgres psql ALTER USER myuser WITH ENCRYPTED PASSWORD 'UserPassword123!'; # 授权用户访问数据库 \c mydatabase # 连接到数据库 GRANT ALL PRIVILEGES ON DATABASE mydatabase TO myuser; \q # 退出
5. 远程访问配置(可选,生产环境需谨慎)
- 编辑PostgreSQL配置文件,允许监听所有IP:
找到sudo nano /etc/postgresql/<版本>/main/postgresql.conf # 如“postgresql.conf”或“postgresql-16-main.conf”listen_addresses = 'localhost',修改为:listen_addresses = '*' - 编辑客户端认证文件,允许远程密码访问:
在文件末尾添加:sudo nano /etc/postgresql/<版本>/main/pg_hba.confhost all all 0.0.0.0/0 scram-sha-256 - 重启PostgreSQL服务:
sudo systemctl restart postgresql
6. 防火墙配置
- 允许PostgreSQL默认端口(5432):
sudo ufw allow 5432/tcp sudo ufw enable
7. 常见管理命令
- 进入PostgreSQL命令行:
sudo -u postgres psql - 备份数据库:
pg_dump -U myuser -d mydatabase > mydatabase_backup.sql - 恢复数据库:
psql -U myuser -d mydatabase -f mydatabase_backup.sql - 查看PostgreSQL状态:
sudo systemctl status postgresql - 查看日志文件:
sudo tail -f /var/log/postgresql/postgresql-<版本>-main.log
三、注意事项
- 安全加固:
- 生产环境中禁止root/postgres用户远程登录,使用普通用户+SSH隧道访问。
- 定期更新数据库软件包(
sudo apt update && sudo apt upgrade)。 - 为数据库用户设置强密码,避免使用默认密码。
- 性能优化:
- MySQL:调整
innodb_buffer_pool_size(建议为物理内存的50%-70%)。 - PostgreSQL:调整
shared_buffers(建议为物理内存的25%)。
- MySQL:调整
- 备份策略:
- 定期备份数据库(每日增量备份+每周全量备份),存储到异地或云存储。
- 监控工具:
- 使用
htop(系统资源)、mytop(MySQL监控)、pg_stat_activity(PostgreSQL监控)等工具监控数据库状态。
- 使用
以上就是关于“ubuntu环境如何配置数据库服务”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm