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

一. 创建虚拟机并安装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 和密码登录。

...

相关推荐
黑色的白兔No110 小时前
deepin 25安装mysql
数据库·mysql·debian
疯狂打码的少年10 小时前
【计算机网络】网络互连设备(中继器 / 网桥 / 交换机 / 路由器 / 网关)
网络·笔记·计算机网络·智能路由器
cc57250265310 小时前
2026 秋招采购数据分析校招 JD、面试真题与项目准备|2027 届求职复盘
数据库
程序员清风10 小时前
Python 操作 MySQL、Redis 与消息队列的完整实践
redis·python·mysql
ljt272496066110 小时前
Vue笔记--状态管理
前端·vue.js·笔记
风哥2号11 小时前
数据库教程FGMT28‑Windows‑MySQL5.7‑8.0‑8.4-9.7安装配置
数据库·mysql
John_ToDebug18 小时前
判断力无法被 AI 替代,但它正在被你亲手扔掉
经验分享·笔记
2601_9622186119 小时前
万象生鲜系统业财一体化底层打通技术自动生成经营账单
大数据·数据库·人工智能·python·算法
李高钢19 小时前
Python FastAPI 框架入门:从零搭建你的第一个高性能 API 服务
数据库·python·fastapi
柳鲲鹏20 小时前
运气学概论:提纲草案
笔记