Ubuntu环境配置数据库服务指南(以MySQL和PostgreSQL为例)
sudo apt update && sudo apt upgrade -y
sudo apt install -y vim curl wget
sudo apt install mysql-server -y
sudo mysql_secure_installation
按提示完成以下操作:
sudo systemctl start mysql
sudo systemctl enable mysql
sudo systemctl status mysql # 应显示“active (running)”
sudo mysql -u root -p
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;
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
找到bind-address = 127.0.0.1,修改为:bind-address = 0.0.0.0
sudo systemctl restart mysql
192.168.1.%):CREATE USER 'remoteuser'@'192.168.1.%' IDENTIFIED BY 'RemotePassword123!';
GRANT ALL PRIVILEGES ON mydatabase.* TO 'remoteuser'@'192.168.1.%';
FLUSH PRIVILEGES;
sudo ufw allow 3306/tcp
sudo ufw enable # 若未启用防火墙
mysqldump -u myuser -p mydatabase > mydatabase_backup.sql
mysql -u myuser -p mydatabase < mydatabase_backup.sql
sudo systemctl status mysql
sudo tail -f /var/log/mysql/error.log
postgresql-contrib提供额外功能):sudo apt install postgresql postgresql-contrib -y
postgres。psql --version # 输出类似“psql (PostgreSQL) 16.2 (Ubuntu 16.2-1.pgdg24.04+1)”
sudo systemctl status postgresql # 应显示“active (running)”
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 # 退出
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.conf
在文件末尾添加:host all all 0.0.0.0/0 scram-sha-256
sudo systemctl restart postgresql
sudo ufw allow 5432/tcp
sudo ufw enable
sudo -u postgres psql
pg_dump -U myuser -d mydatabase > mydatabase_backup.sql
psql -U myuser -d mydatabase -f mydatabase_backup.sql
sudo systemctl status postgresql
sudo tail -f /var/log/postgresql/postgresql-<版本>-main.log
sudo apt update && sudo apt upgrade)。innodb_buffer_pool_size(建议为物理内存的50%-70%)。shared_buffers(建议为物理内存的25%)。htop(系统资源)、mytop(MySQL监控)、pg_stat_activity(PostgreSQL监控)等工具监控数据库状态。