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

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

...

相关推荐
智者知已应修善业3 分钟前
【51单片机8*8点阵显示箭头动画详细注释】2022-12-1
c语言·经验分享·笔记·嵌入式硬件·51单片机
匈牙利认真的小菠萝1 小时前
Windows环境下实现GitLab与Gitee仓库代码提交隔离
笔记
川石课堂软件测试1 小时前
Oracle 数据库:视图与索引
数据库·网络协议·nginx·http·oracle·grafana·prometheus
理智的煎蛋5 小时前
MySQL高可用架构:MHA
linux·数据库·mysql·架构·可用性测试
罗光记5 小时前
苹果内部 AI聊天机器人“Asa”曝光,为零售员工打造专属A
数据库·经验分享·百度·微信公众平台·新浪微博
悠哉悠哉愿意7 小时前
【机器学习学习笔记】线性回归实现与应用
笔记·学习·机器学习
li35747 小时前
从“内存操作”到“原子更新”:一次代码思维的跃迁
数据库·oracle
大筒木老辈子7 小时前
Linux笔记---计算机网络概述
linux·笔记·计算机网络
瀚高PG实验室7 小时前
执行select * from a where rownum<1;,数据库子进程崩溃,业务中断。
数据库·sql·瀚高数据库
小白考证进阶中7 小时前
终于赶在考试券过期前把Oracle OCP证书考下来了!
运维·数据库·oracle·dba·开闭原则·数据库管理员