centos服务器初始化配置(磁盘挂载、mysql5.7、mongodb4.0.17安装、端口开放)

255 阅读6分钟

前言

对新开的centos7服务器进行初始化操作,包括磁盘挂载、端口开放,mysql5.7、mongodb4.0.17 版本的安装

一、初始化要求

1.1 分区

要求:在系统安装时初始化的分区方式为:

1、swap 分区 无要求;

2、/boot 分区 如果有,> 500 M ;如果没有,无所谓。

输入 命令,该命令查看已经挂载的分区详情。查看是否有 boot分区。发现 boot分区的大小大于 500M ,满足要求。

[root@host-10-240-50-80 ~]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
devtmpfs                  32G     0   32G    0% /dev
tmpfs                     32G     0   32G    0% /dev/shm
tmpfs                     32G  8.7M   32G    1% /run
tmpfs                     32G     0   32G    0% /sys/fs/cgroup
/dev/mapper/centos-root   60G  1.5G   58G    3% /
/dev/vda1                950M  150M  800M   16% /boot
tmpfs                    6.3G     0  6.3G    0% /run/user/0

1.2 磁盘挂载方式

要求:选取两种磁盘挂载方式。
    1、方式1:只有系统盘,空间都给根分区。
    2、方式2:系统盘+数据盘,系统盘50G,数据盘挂载到 /opt 目录
    3、不需要文件存储、对象存储。

检查是否有磁盘未被挂载 , 发现有两个磁盘未被挂载上。

使用命令,查看系统盘为 64.4 > 50G,数据盘 536.9 > 500G。

[root@host-10-240-50-80 ~]# fdisk -l
​
磁盘 /dev/vda:64.4 GB, 64424509440 字节,125829120 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x0009ba37
​
   设备 Boot      Start         End      Blocks   Id  System
/dev/vda1   *        2048     1953791      975872   83  Linux
/dev/vda2         1953792   125829086    61937647+  8e  Linux LVM
​
磁盘 /dev/mapper/centos-root:63.4 GB, 63422070784 字节,123871232 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
​
​
磁盘 /dev/vdb:536.9 GB, 536870912000 字节,1048576000 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节

将数据盘 /dev/vdb 挂载到 /opt 目录下。

1、查看磁盘情况

lsblk

image-20220210145725175

2、对 /dev/vdb 进行磁盘分区

fdisk /dev/vdb

image-20220210150134094

3、分区完成后,查看 分区是否成功,发现多了个 vdb1 的分区。

lsblk

image-20220210150328227

4、格式化磁盘并写入文件系统

这里的 ext3 和 ext4都是可以的。

mkfs -t ext3 /dev/vdb1

image-20220210150924472

5、挂载新磁盘到某个节点上,我这里挂载到 /opt 目录

mount /dev/vdb1 /opt
lsblk

image-20220210151124832

6、设置开机自启动

新创建的分区不能开机自动挂载,每次重启机器都需要手动挂载,设置开机自动挂载需要修改 /etc/fstab 文件,在文件最后增加一行。

vim /etc/fstab

/dev/vdb1 /opt ext3 defaults 0 1    // 如果上面用的是 ext3,这里也要用 ext3

1.3 内核参数优化

vim /etc/security/limits.conf

在尾部添加这些内容。

* - nofile 655360
* - as unlimited
* - nproc 2056474
* - fsize unlimited
* - memlock unlimited
​
ulimit -n 655360
ulimit -u 2056474

image-20220210152304407

vim /etc/sysctl.conf

在尾部添加这些内容

vm.max_map_count=262144
fs.file-max = 6553560

image-20220210152408311

sysctl -p

重启服务器 reboot

查看当前文件打开数变为了 655360

ulimit -n

image-20220210152841783

二、软件安装

2.1 mysql

Mysql 版本:Mysql 5.7.30

安装步骤

1、首先检查所用的 Linux 是否安装过 mysql

[root@host-10-240-50-170 ~]# rpm -qa | grep -i mysql
[root@host-10-240-50-170 ~]# rpm -qa | grep -i mariadb
[root@host-10-240-50-170 ~]# rpm -e mariadb-libs-5.5.68-1.el7.x86_64  卸载

2、查看 centos7.9 的位数,则去下载 64 位的安装包

[root@host-10-240-50-170 package]# file /bin/ls
/bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=aaf05615b6c91d3cbb076af81aeff531c5d7dfd9, stripped
wget https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.30-linux-glibc2.12-x86_64.tar

3、安装编译软件及环境

yum update

4、解压并重命名为 mysql

[root@host-10-240-50-170 software]# tar -zxvf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz 
[root@host-10-240-50-170 software]# mv mysql mysql-5.7.30

5、进入 安装后的目录,我这里是 /opt/software/mysql-5.7.30,创建数据目录

[root@host-10-240-50-170 mysql-5.7.30]# mkdir data
[root@host-10-240-50-170 mysql-5.7.30]# mkdir log

然后在 data 目录创建 mysqld.pid 文件,在log 目录创建 mysqld.log 文件。

6、创建系统用户组授权

groupadd mysql
useradd -g mysql mysql
[root@host-10-240-50-170 mysql-5.7.30]# chown -R mysql:mysql /opt/software/mysql-5.7.30/

7、初始化数据库,进入 bin 目录

./mysqld --initialize --user=mysql --basedir=/opt/software/mysql-5.7.30 --datadir=/opt/software/mysql-5.7.30/data

注意结尾的是 root的初始密码 csurms<sp4yA

image-20220210204042344

8、Mysql 加入服务

[root@host-10-240-50-170 support-files]# cp /opt/software/mysql-5.7.30/support-files/mysql.server /etc/init.d/mysql

修改配置:

basedir=/opt/software/mysql-5.7.30
datadir=/opt/software/mysql-5.7.30/data

9、配置 my.cnf

[client]
port=3306
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
[mysqld]
character_set_server=utf8mb4
init_connect='SET NAMES utf8mb4'
basedir=/opt/software/mysql-5.7.30
datadir=/opt/software/mysql-5.7.30/data
socket=/tmp/mysql.sock
log-error=/opt/software/mysql-5.7.30/log/mysqld.log
pid-file=/opt/software/mysql-5.7.30/data/mysqld.pid

10、启动 mysql

service mysql start
service mysql stop

11、修改密码

[root@host-10-240-50-170 bin]# cd /opt/software/mysql-5.7.30/bin     
[root@host-10-240-50-170 bin]# ./mysql -uroot -p
set password='Root@2022';
flush privileges; ---刷新权限,之后退出重新登录
create user root@'%' identified by 'Root';
grant all privileges on *.* to root@'%' with grant option;
flush privileges;

12、设置开机启动

chkconfig --add mysql
chkconfig mysql on
chkconfig --list # 查看

关闭防火墙,或者开放端口后远程可以访问。

2.2 mongodb

mongodb 的版本在 4.0.17 > 要求的 4.0.9

1、在官网下载安装安装包

wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.17.tgz

2、解压安装包并改名:

[root@host-10-240-50-170 package]# tar -zxvf mongodb-linux-x86_64-4.0.17.tgz -C /opt/software/
[root@host-10-240-50-170 package]# cd /opt/software/
[root@host-10-240-50-170 software]# mv mongodb-linux-x86_64-4.0.17/ mongodb

3、配置 mongodb 的环境变量

vim /etc/profile

export PATH=/opt/software/mongodb/bin:$PATH

4、使配置文件生效

source /etc/profile

5、进入 mongodb 目录,创建几个文件夹

[root@host-10-240-50-170 mongodb]# mkdir -p data/db
[root@host-10-240-50-170 mongodb]# mkdir log
[root@host-10-240-50-170 mongodb]# mkdir etc

在log 目录下创建 mongodb.log 文件

touch  mongodb.log

在 etc 目录下创建 mongodb.conf 文件

touch  mongodb.conf

6、编辑 mongodb.conf

dbpath=/opt/software/mongodb/data/db # 指定数据存储目录
logpath=/opt/software/mongodb/log/mongodb.log # 指定日志文件存储目录
logappend=true # 使用追加方式写日志
port=27017 # 端口
fork=true # 以守护进程方式运行
auth=true # 启用验证,这个类比新版的 security
bind_ip=0.0.0.0# 允许任意外部地址访问

注意,需要添加 27017 的端口到 防火墙.暂没添加

7、启动 mongodb,进入 bin 目录

mongod --config /opt/software/mongodb/etc/mongodb.conf

8、添加用户

执行 mongo 命令,连接 mongodb 数据库,然后执行以下命令

// 使用admin数据库use admin
// 给admin数据库添加管理员用户名和密码,用户名和密码请自行设置
db.createUser({user:"admin",pwd:"admin@2022",roles:["root"]})
// 验证是否成功,返回1则代表成功db.auth("admin", "admin")
// 切换到要设置的数据库,以test为例use test
// 为test创建用户,用户名和密码请自行设置。db.createUser({user: "test", pwd: 
"test", roles: [{ role: "dbOwner", db: "test"}]})

退出,重启 mongdob

三、网络环境端口开放

1、查看防火墙所有开放的端口

firewall-cmd --zone=public --list-ports

2、查看防火墙状态

 firewall-cmd --state

3、开放端口。使用permanent 参数,重启后仍然可以使用

firewall-cmd --zone=public --add-port=5673/tcp --permanent 

4、查看监听的端口

需要安装 net-tools 工具,yum install -y net-tools

netstat -lnpt

5、查看端口是否开启

firewall-cmd --query-port=80/tcp

6、关闭开启的端口

firewall-cmd --permanent --zone=public --remove-port=80/tcp

7、查看开放的端口

firewall-cmd --list-ports

8、重启防火墙

开放端口后需要重启防火墙

firewall-cmd --reload