[学习笔记] 从零开始虚拟化搭建数据库服务器

一. 创建虚拟机并安装CentOS 7

硬件参数根据需求进行设置

CD/DVD 源选择CentOS7的 ISO 镜像

安装过程略...

二. 安装VMware Tools

等待安装结束,从菜单中选择安装VMware Tools,此时

CD/DVD 源会自动挂载到虚拟机中。

从虚拟机进入CentOS 7 系统

运行,创建挂载目录

复制代码
sudo mkdir -p /mnt/cdrom

运行

复制代码
lsblk

查看CD/DVD驱动器设备:

运行命令,挂载CD/DVD驱动器

复制代码
sudo mount /dev/sr0 /mnt/cdrom

执行结果如下,表明挂载成功

进入挂载目录,解压VMware Tools安装包

复制代码
cp /mnt/cdrom/VMwareTools-*.tar.gz /tmp/
cd /tmp
tar -zxvf VMwareTools-*.tar.gz

如果缺少编译工具和内核头文件,可以运行以下命令安装:

复制代码
yum install -y gcc make perl kernel-devel kernel-headers

进入解压后的目录,运行以下命令安装VMware Tools:

复制代码
cd vmware-tools-distrib
sudo ./vmware-install.pl

执行一路回车即可,安装完成后会提示:

安装成功结果:

三. 安装常用工具

确保联网

当前没有任何网络工具,如何确定系统已经接入互联网?

以访问百度为例,运行以下命令:

复制代码
echo > /dev/tcp/www.baidu.com/80 && echo "ok" || echo "not ok"

显示ok,则表明已经联网。

因为CentOS7已停止维护,所以需要手动添加 repo 源。运行:

安装网络工具

bash 复制代码
yum install -y wget curl net-tools vim epel-release

配置网络

将虚拟机自动获取的IP地址改为静态IP地址。

开放ssh的22端口

打开sshd

bash 复制代码
sudo systemctl start sshd
sudo systemctl enable sshd

打开防火墙,运行

复制代码
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload

运行结结果:

此时可以通过ssh登录了,接下来可以安装SQL-Server、Redis等服务。

四. 安装服务

配置SELinux,打开码编辑器,并将SELINUX=enforcing 改为 SELINUX=permissive

复制代码
vi /etc/selinux/config

安装 SQL Server 2017

复制代码
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2017.repo
sudo yum install -y mssql-server
sudo /opt/mssql/bin/mssql-conf setup
sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
sudo firewall-cmd --reload
systemctl status mssql-server
systemctl enable mssql-server

安装 OpenSSL

复制代码
wget https://www.openssl.org/source/openssl-1.1.1.tar.gz
tar -xvf openssl-1.1.1.tar.gz
cd openssl-1.1.1
./config --prefix=/usr/local/openssl shared zlib
make && make install
sudo ldconfig
ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/openssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1
ln -s /usr/local/openssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1

安装 Redis

复制代码
tar -zxvf redis-7.4.0.tar.gz
cd redis-7.4.0
make && make install
ln -s /usr/local/bin/redis-server /usr/bin/redis-server
cp redis.conf /etc/redis/
sudo firewall-cmd --zone=public --add-port=6379/tcp --permanent
sudo firewall-cmd --reload

新建redis启动脚本

复制代码
vi /usr/lib/systemd/system/redis.service
ini 复制代码
[Unit]
Description=Redis persistent key-value database
After=network.target

[Service]
LimitNOFILE=10032
ExecStart=/usr/bin/redis-server /etc/redis/redis.conf --supervised systemd
ExecStop=/usr/libexec/redis-shutdown
Type=simple
User=redis
Group=redis
RuntimeDirectory=redis
RuntimeDirectoryMode=0755

[Install]
WantedBy=multi-user.target

执行命令

复制代码
systemctl daemon-reload
systemctl start redis
systemctl enable redis

安装 RabbitMQ

安装Erlang

复制代码
cd /tmp/
curl -sfL -O https://github.com/rabbitmq/erlang-rpm/releases/download/v26.2.5.11/erlang-26.2.5.11-1.el7.x86_64.rpm
yum install -y erlang-26.2.5.11-1.el7.x86_64.rpm

安装RabbitMQ

复制代码
curl -sfL -O https://github.com/rabbitmq/rabbitmq-server/releases/download/v4.1.0/rabbitmq-server-4.1.0-1.el8.noarch.rpm
yum install rabbitmq-server-4.1.0-1.el8.noarch.rpm

添加防火墙

复制代码
sudo firewall-cmd --zone=public --add-port=5672/tcp --permanent

sudo firewall-cmd --zone=public --add-port=25672/tcp --permanent

sudo firewall-cmd --zone=public --add-port=4369/tcp --permanent

配置外部访问的用户

复制代码
# 1. 添加用户 sa,并设置密码(将 yourpassword 替换成你实际使用的密码)
sudo rabbitmqctl add_user sa yourpassword

# 2. 给用户 sa 设置为管理员角色
sudo rabbitmqctl set_user_tags sa administrator

# 3. 设置该用户对默认虚拟主机 "/" 拥有全部权限
sudo rabbitmqctl set_permissions -p / sa ".*" ".*" ".*"

启动RabbitMQ的Web管理插件

复制代码
sudo rabbitmq-plugins list | grep management
sudo rabbitmq-plugins enable rabbitmq_management
sudo systemctl restart rabbitmq-server

运行结果:

访问RabbitMQ管理界面,默认地址为 http://127.0.0.1:15672,使用刚才创建的用户 sa 和密码登录。

...

相关推荐
clorisqqq20 分钟前
人工智能现代方法笔记 第1章 绪论(1/2)
人工智能·笔记
charlie11451419121 分钟前
嵌入式现代C++教程: 构造函数优化:初始化列表 vs 成员赋值
开发语言·c++·笔记·学习·嵌入式·现代c++
IDC02_FEIYA1 小时前
SQL Server 2025数据库安装图文教程(附SQL Server2025数据库下载安装包)
数据库·windows
辞砚技术录1 小时前
MySQL面试题——联合索引
数据库·面试
萧曵 丶1 小时前
MySQL 主键不推荐使用 UUID 的深层原因
数据库·mysql·索引
wdfk_prog2 小时前
[Linux]学习笔记系列 -- [fs]seq_file
linux·笔记·学习
小北方城市网2 小时前
分布式锁实战指南:从选型到落地,避开 90% 的坑
java·数据库·redis·分布式·python·缓存
liuchangng2 小时前
Open-AutoGLM部署运行笔记
笔记
君心似砂2 小时前
很久没有写东西了
笔记
毕设十刻2 小时前
基于Vue的人事管理系统67zzz(程序 + 源码 + 数据库 + 调试部署 + 开发环境配置),配套论文文档字数达万字以上,文末可获取,系统界面展示置于文末
前端·数据库·vue.js