温馨提示×

Ubuntu虚拟机如何搭建数据库服务器

小樊
49
2025-10-03 22:02:12
栏目: 云计算

Ubuntu虚拟机搭建数据库服务器(以MySQL为例)

1. 准备虚拟机环境

  • 选择虚拟机软件:使用VirtualBox、VMware等主流虚拟机软件创建Ubuntu虚拟机(建议分配2GB以上内存、2核以上CPU、20GB以上硬盘,以满足数据库运行需求)。
  • 安装Ubuntu系统:下载Ubuntu Server或Desktop版ISO镜像,通过虚拟机软件加载并完成安装(安装过程中设置root密码和普通用户账户)。
  • 配置网络:确保虚拟机网络模式为NAT(默认)或桥接(需获取局域网IP),并能正常访问外网(用于下载软件包)。

2. 安装MySQL数据库

  • 更新系统包:打开终端,运行以下命令同步软件包列表并升级现有软件:
    sudo apt update && sudo apt upgrade -y
    
  • 安装MySQL服务器:执行以下命令安装MySQL(系统会自动安装依赖包):
    sudo apt install mysql-server -y
    
  • 启动MySQL服务:安装完成后,启动MySQL并设置开机自启:
    sudo systemctl start mysql      # 启动服务
    sudo systemctl enable mysql     # 开机自启
    
  • 检查服务状态:确认MySQL是否运行正常:
    sudo systemctl status mysql     # 应显示“active (running)”
    

3. 配置MySQL安全设置

  • 运行安全脚本:执行mysql_secure_installation命令,完成以下安全配置:
    • 设置root用户密码(若未在安装时设置);
    • 移除匿名用户(避免未授权访问);
    • 禁止root远程登录(提升安全性);
    • 删除测试数据库(避免安全隐患)。
      按提示逐步操作即可。

4. 创建数据库与用户

  • 登录MySQL:使用root用户登录MySQL控制台:
    sudo mysql -u root -p           # 输入root密码
    
  • 创建数据库:在MySQL命令行中执行以下命令(将mydb替换为你的数据库名):
    CREATE DATABASE mydb;
    
  • 创建用户并授权:创建专用用户(如myuser),并授予其对数据库的所有权限(将mypassword替换为强密码):
    CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypassword';
    GRANT ALL PRIVILEGES ON mydb.* TO 'myuser'@'localhost';
    FLUSH PRIVILEGES;               # 刷新权限使设置生效
    
  • 退出MySQL:输入exit\q退出控制台。

5. (可选)配置远程访问

  • 修改MySQL配置文件:若需要远程访问,编辑MySQL配置文件:
    sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
    
    找到bind-address = 127.0.0.1行,注释掉(在行首添加#),保存并退出(允许所有IP连接)。
  • 重启MySQL服务:使配置生效:
    sudo systemctl restart mysql
    
  • 配置防火墙:允许MySQL默认端口(3306)的流量:
    sudo ufw allow 3306/tcp         # 允许TCP端口3306
    sudo ufw reload                 # 重新加载防火墙规则
    
  • 授权远程用户:若需允许特定IP访问,可创建远程用户并授权(将remote_ip替换为实际IP):
    CREATE USER 'remote_user'@'remote_ip' IDENTIFIED BY 'remotepassword';
    GRANT ALL PRIVILEGES ON mydb.* TO 'remote_user'@'remote_ip';
    FLUSH PRIVILEGES;
    

6. 验证数据库功能

  • 登录测试:使用创建的普通用户登录MySQL:
    mysql -u myuser -p -h localhost  # 输入密码
    
  • 操作数据库:进入MySQL后,执行以下命令验证数据库功能:
    USE mydb;                       # 切换到mydb数据库
    CREATE TABLE users (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(50));  # 创建表
    INSERT INTO users (name) VALUES ('Alice'), ('Bob');  # 插入数据
    SELECT * FROM users;            # 查询数据
    
    若能正常执行上述命令,说明数据库服务器搭建成功。

注意事项

  • 生产环境中,建议关闭远程root登录(mysql_secure_installation中已配置),并使用强密码;
  • 定期备份数据库(可使用mysqldump工具);
  • 若需更高性能或可靠性,可配置主从复制、集群等高级功能。

0