Linux小白基础环境搭建汇总

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 以Centos7为例。由于系统是新购买的,所以这里(未使用docker)进行了ssh端口修改,防火墙配置,磁盘挂载,创建用户,JDK,Mysql,Redis,Nginx等安装。

以Centos7为例。由于系统是新购买的,所以这里(未使用docker)进行了ssh端口修改,防火墙配置,磁盘挂载,创建用户,JDK,Mysql,Redis,Nginx等安装。

一、磁盘挂载

[root@iZuf69k182ad10go3ll24pZ ~]# fdisk -l   //查看磁盘信息

image.gif

[root@iZuf69k182ad10go3ll24pZ ~]# fdisk /dev/sdb     //开始格式化
a). n    //表示设定新的硬盘分割区
b). p    //表示设置的是主要分割区
c). 1    //或者回车默认选择1
d). 2048 //或者回车默认
e). 回车默认
f). w  //保存

image.gif

[root@iZuf69k182ad10go3ll24pZ ~]# fdisk -l    //查看刚分配的盘符,如/dev/sdb1

image.gif

[root@iZuf69k182ad10go3ll24pZ ~]# mkfs -t ext4 /dev/sdb1   //格式化, 这里指定文件类型为ext4, 默认ext2,比较不建议

image.gif

[root@iZuf69k182ad10go3ll24pZ ~]# mkdir /data/svdb    //创建要挂载目录
[root@iZuf69k182ad10go3ll24pZ ~]# mount /dev/sdb1  /data/svdb   //挂载
[root@iZuf69k182ad10go3ll24pZ ~]# df -HT   //查看挂载情况

image.gif

二、修改SSH端口

[root@iZuf69k182ad10go3ll24pZ ~]# vim /etc/ssh/sshd_config    //修改配置

image.gif

image.png

端口添加完,wq!保存退出。建议22端口先留着,等新端口测试通过之后再屏蔽。

[root@iZuf69k182ad10go3ll24pZ ~]# systemctl restart sshd.service   //重启

image.gif

三、防火墙配置

[root@iZuf69k182ad10go3ll24pZ ~]# firewall-cmd --state   //查看防火墙状态

image.gif

[root@iZuf69k182ad10go3ll24pZ ~]# systemctl start firewalld  //开启防火墙,如果已开启,忽略这一步

image.gif

[root@iZuf69k182ad10go3ll24pZ ~]# systemctl enable firewalld  //设置开机自启

image.gif

[root@iZuf69k182ad10go3ll24pZ ~]# firewall-cmd --zone=public --permanent --add-port=22212/tcp     //开启ssh新添加的22212端口

image.gif

[root@iZuf69k182ad10go3ll24pZ ~]# systemctl restart firewalld  //重启防火墙

image.gif

[root@iZuf69k182ad10go3ll24pZ ~]# firewall-cmd --list-ports  //查看防火墙开放端口

image.gif

服务器安全组端口记得也要放行。

四、添加用户

[root@iZuf69k182ad10go3ll24pZ ~]# useradd -d /data/svdb/kuria -m kuria     //添加用户名为kuria的用户,并指定访问根目录为/data/svdb/kuria

image.gif

[root@iZuf69k182ad10go3ll24pZ ~]# passwd kuria   //设置密码

image.gif

[root@iZuf69k182ad10go3ll24pZ ~]# chown -R kuria:kuria /data/svdb/kuria   //文件夹授权

image.gif

[root@iZuf69k182ad10go3ll24pZ ~]# chmod 760 /data/svdb/kuria   //用户授760权限

image.gif

五、安装JDK

[root@iZuf69k182ad10go3ll24pZ ~]# rpm -qa | grep java    //查看已安装的jdk

image.gif

[root@iZuf69k182ad10go3ll24pZ ~]# rpm -e --nodeps java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el6_5.x86_64    //如果系统默认安装了openJDK,将其卸载。如果没有则忽略此步

image.gif

SFTP上传jdk包,或者通过wget下载。

[root@iZuf69k182ad10go3ll24pZ software]# tar -zxvf jdk-8u131-linux-x64.tar.gz    //解压

image.gif

[root@iZuf69k182ad10go3ll24pZ software]# vim /etc/profile   //配置环境变量

image.gif

image.png

[root@iZuf69k182ad10go3ll24pZ software]# source /etc/profile   //环境变量生效

image.gif

[root@iZuf69k182ad10go3ll24pZ software]# java -version   //查看版本
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)

image.gif

六、安装Mysql 5.7

卸载centos7自带的mariadb

[mysql@iZuf69k182ad10go3ll24pZ ~]$ rpm -qa | grep mariadb
mariadb-libs-5.5.60-1.el7_5.x86_64
[mysql@iZuf69k182ad10go3ll24pZ ~]$ rpm -e mariadb-libs-5.5.60-1.el7_5.x86_64 --nodeps

image.gif

下载mysql官方Yum Repository

[mysql@iZuf69k182ad10go3ll24pZ ~]$ wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

image.gif

使用yum安装

[mysql@iZuf69k182ad10go3ll24pZ ~]$ yum -y install mysql57-community-release-el7-10.noarch.rpm

image.gif

查看mysql源是否安装成功,如下就是成功了

[root@iZuf69k182ad10go3ll24pZ mysql]# yum repolist enabled | grep "mysql.*-com*"
mysql-connectors-community/x86_64 MySQL Connectors Community                 153
mysql-tools-community/x86_64      MySQL Tools Community                      110
mysql57-community/x86_64          MySQL 5.7 Community Server                 424

image.gif

这里可以修改默认安装的版本

[root@iZuf69k182ad10go3ll24pZ mysql]# vim /etc/yum.repos.d/mysql-community.repo

image.gif

image.png

如图,默认安装的版本设置enabled=1,其他设置为0即可,这里默认安装5.7,配置不改。

接下来,安装mysql服务

[root@iZuf69k182ad10go3ll24pZ mysql]# yum install mysql-community-server

image.gif

启动Mysql

[root@iZuf69k182ad10go3ll24pZ mysql]# systemctl start mysqld.service    //启动mysql
[root@iZuf69k182ad10go3ll24pZ mysql]# systemctl status mysqld.service   //查看状态
● mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: active (running) since Tue 2020-06-09 09:41:39 CST; 12s ago
     Docs: man:mysqld(8)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
  Process: 13302 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=0/SUCCESS)
  Process: 13252 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
 Main PID: 13306 (mysqld)
   CGroup: /system.slice/mysqld.service
           └─13306 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid
Jun 09 09:41:35 iZuf69k182ad10go3ll24pZ systemd[1]: Starting MySQL Server...
Jun 09 09:41:39 iZuf69k182ad10go3ll24pZ systemd[1]: Started MySQL Server.

image.gif

开机自启

[root@iZuf69k182ad10go3ll24pZ mysql]# systemctl enable mysqld
[root@iZuf69k182ad10go3ll24pZ mysql]# systemctl daemon-reload

image.gif

安装完后,会默认生成一个root密码,存储路径为:/var/log/mysqld.log。通过以下命令查看root密码

[root@iZuf69k182ad10go3ll24pZ mysql]# grep 'temporary password' /var/log/mysqld.log
2020-06-09T01:41:37.293069Z 1 [Note] A temporary password is generated for root@localhost: 7#fTVZgkr1e4

image.gif

进入mysql,修改默认密码。

注:由于Mysql5.7默认安装了密码安全检查插件,这里设置的新密码必须含有大小写和特殊符号,不然会提示密码过于简单。还有这里的alert user命令需要使用大写。

[root@iZuf69k182ad10go3ll24pZ mysql]# mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.30
Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new passwd';
Query OK, 0 rows affected (0.00 sec)
mysql>

image.gif

修改mysql端口,添加port=3313,lower_case_table_names=1忽略大小写,以及更改mysql目录。开放新端口,防火墙也需要配置。

[root@iZuf69k182ad10go3ll24pZ mysql]# systemctl stop mysqld.service  //关闭数据库
[root@iZuf69k182ad10go3ll24pZ mysql]# vim /etc/my.cnf
[mysqld]
port=3313
lower_case_table_names=1
character-set-server=utf8
max_connections=200
basedir=/data/xvdb/mysql/mysql_data
datadir=/data/xvdb/mysql/mysql_data/data
socket=/data/xvdb/mysql/mysql_data/data/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
log-error=/data/xvdb/mysql/mysql_data/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

image.gif

修改mysql目录

[root@iZuf69k182ad10go3ll24pZ mysql]# mkdir /data/xvdb/mysql/mysql_data    //新建文件夹
[root@iZuf69k182ad10go3ll24pZ mysql]# chmod 777 /data/xvdb/mysql/mysql_data   //授权
[root@iZuf69k182ad10go3ll24pZ mysql]# rm -fr /data/xvdb/mysql/mysql_data/ 
[root@iZuf69k182ad10go3ll24pZ mysql]# cp -R /var/lib/mysql /data/xvdb/mysql/mysql_data    //拷贝原有数据文件到新目录
[root@iZuf69k182ad10go3ll24pZ mysql]# mv /var/lib/mysql /var/lib/mysql_bak    //备份原有数据文件
[root@iZuf69k182ad10go3ll24pZ mysql]# chown -R mysql:mysql /data/xvdb/mysql/mysql_data/
[root@iZuf69k182ad10go3ll24pZ mysql]# vim /etc/my.cnf

image.gif

重启Mysql.

为了安全,这里Mysql不对外进行开放, 将使用堡垒机访问。如果要远程可以访问,最好新建远程账户:

mysql> GRANT ALL PRIVILEGES ON *.* TO 'kuria'@'%' IDENTIFIED BY 'Kuria123312%' WITH GRANT OPTION;

image.gif

隧道配置两种方式:

1、借助于Xshell:

image.png

2、使用navicat:

image.png

最后navicat连接信息:

image.png

七、安装Redis

[root@iZuf69k182ad10go3ll24pZ software]# wget http://download.redis.io/releases/redis-5.0.7.tar.gz     //下载redis包
[root@iZuf69k182ad10go3ll24pZ software]# tar -zxvf redis-5.0.7.tar.gz    //解压
[root@iZuf69k182ad10go3ll24pZ software]# cd redis-5.0.7
[root@iZuf69k182ad10go3ll24pZ redis-5.0.7]# make MALLOC=libc    //编译
[root@iZuf69k182ad10go3ll24pZ redis-5.0.7]# make install    //安装,这里默认安装到/usr/local/bin目录下,建立软连接到统一redis目录
[root@iZuf69k182ad10go3ll24pZ redis-5.0.7]# mkdir sbin
[root@iZuf69k182ad10go3ll24pZ redis-5.0.7]# ln -s /usr/local/bin/redis-* ./sbin/
[root@iZuf69k182ad10go3ll24pZ sbin]# ./redis-server ../redis.conf

image.gif

redis配置修改

#这里开启,默认只能本机连接,如果要外部可以连接,这里注释,或者改成0.0.0.0
bind 127.0.0.1
#修改端口
port 6379
#no改为yes
daemonize yes
#这里注释打开,配置密码。默认没有密码
requirepass  123456
#这里notify-keyspace-events ''改为notify-keyspace-events Ex, 开启key过期事件监听
notify-keyspace-events Ex

image.gif

八、Nginx安装

[root@iZuf69k182ad10go3ll24pZ conf]#  wget http://nginx.org/download/nginx-1.14.0.tar.gz   //下载Nginx包
[root@iZuf69k182ad10go3ll24pZ conf]#  yum install gcc-c++
[root@iZuf69k182ad10go3ll24pZ conf]#  yum install -y pcre pcre-devel
[root@iZuf69k182ad10go3ll24pZ conf]#  yum install -y zlib zlib-devel
[root@iZuf69k182ad10go3ll24pZ conf]#  yum install -y openssl openssl-devel  //安装依赖
[root@iZuf69k182ad10go3ll24pZ conf]# tar -zxvf nginx-1.14.0.tar.gz    //解压
[root@iZuf69k182ad10go3ll24pZ conf]# cd nginx-1.14.0
[root@iZuf69k182ad10go3ll24pZ conf]# ./configure --prefix=/data/xvdb/nginx --with-http_stub_status_module --with-http_ssl_module && make && make install  //编译安装,--prefix后为指定编译安装目录。默认为/usr/local/nginx. --with-http_ssl_module为添加ssl模块
[root@iZuf69k182ad10go3ll24pZ conf]# cd /data/xvdb/nginx/sbin
[root@iZuf69k182ad10go3ll24pZ sbin]#./nginx -c ../conf/nginx.conf   //指定配置文件启动nginx

image.gif

nginx配置https:

server {
        listen       443 ssl;
        server_name  mall.xxx.com;
        root html;
  index index.html index.htm;
  ssl_certificate /data/nginx/ssl/shop/4029788_mall.xxx.com.pem;   
  ssl_certificate_key /data/nginx/ssl/shop/4029788_mall.xxx.com.key;  
  ssl_session_timeout 5m;
  ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; 
  ssl_protocols TLSv1 TLSv1.1 TLSv1.2;   
  ssl_prefer_server_ciphers on; 
  location / {
      root /data/kuliya/kuria-ui;
      index /index.html;
      try_files $uri $uri/ /index.html;
        }
        location /api { 
    proxy_pass         http://127.0.0.1:30002;
    proxy_set_header   Host             $host; 
    proxy_set_header   X-Real-IP        $remote_addr; 
    proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for; 
      }
  location /upload { 
    root /data/kuliya/kuria;
    autoindex on;
      }
    }

image.gif

完。

相关文章
|
6天前
|
Ubuntu Linux 开发工具
Linux下的IMX6ULL——环境搭建与软件安装(一)
Linux下的IMX6ULL——环境搭建与软件安装(一)
77 0
Linux下的IMX6ULL——环境搭建与软件安装(一)
|
6月前
|
关系型数据库 MySQL Linux
linux环境搭建mysql5.7总结
linux环境搭建mysql5.7总结
68 0
|
6天前
|
SQL 数据可视化 Linux
ClickHouse【环境搭建 03】Linux环境离线安装 clickhouse-22.3.3.44 配置参数说明+可视化界面使用(离线安装文件分享百度云盘)
ClickHouse【环境搭建 03】Linux环境离线安装 clickhouse-22.3.3.44 配置参数说明+可视化界面使用(离线安装文件分享百度云盘)
129 0
|
6天前
|
Java Linux
Flume【环境搭建 01】CentOS Linux release 7.5 安装配置 apache-flume-1.9.0 并验证
【2月更文挑战第16天】Flume【环境搭建 01】CentOS Linux release 7.5 安装配置 apache-flume-1.9.0 并验证
47 0
|
6月前
|
Ubuntu Linux 网络安全
1. Linux环境搭建及创建共享文件的方法
1. Linux环境搭建及创建共享文件的方法
167 1
|
6天前
|
网络协议 Ubuntu Linux
如何在Linux环境搭建本地SVN服务器并结合cpolar实现公网访问
如何在Linux环境搭建本地SVN服务器并结合cpolar实现公网访问
|
6天前
|
Java Linux 网络安全
【极数系列】Flink环境搭建&Linux版本 (03)
【极数系列】Flink环境搭建&Linux版本 (03)
60 2
|
6天前
|
Unix Linux 程序员
ClickHouse【环境搭建 01】Linux环境单机版在线安装 Code:210.DB::NetException + Init script is already running 问题处理
ClickHouse【环境搭建 01】Linux环境单机版在线安装 Code:210.DB::NetException + Init script is already running 问题处理
87 0
|
6天前
|
Java Linux Go
Golang环境搭建指南(Windows和linux)
Golang环境搭建指南(Windows和linux)
41 0
|
6天前
|
Linux 数据安全/隐私保护 虚拟化
Linux 环境搭建以及xshell远程连接
Linux 环境搭建以及xshell远程连接