环境配置
Linux
0 .vimrc
#在自己的目录(~)下新建文件.vimrc
vim ~/.vimrc
#添加文本配置(如下...)
#表示一个tab显示出来是多少个空格的长度默认8
set tabstop=2
#表示在编辑模式的时候按退格键的时候退回缩进的长度
set softtabstop=2
#表示每一级缩进的长度,一般设置成跟softtabstop一样
set shiftwidth=2
#表示用制表符表示一个缩进
set noexpandtab
#设置行号
set nu
#表示自动缩进
set autoindent
#表示针对C语言自动缩进
set cindent
source ~/.vimrc
#...随便进入一个文件(cd ~/.vimrc)即可看到改变
1 JavaSE Development Kit
1-1 下载文件夹(/opt)
mkdir java #创建Java文件夹
cd java
#...(上传压缩包到Java文件夹下)
tar -zxvf jdk-8u321-linux-x64.tar.gz #解压tar.gz压缩包
mv jdk-8u321-linux-x64 JDK8 #文件夹改名为'JDK8'(自行决定)
常用解压/压缩命令
#.tar
tar -xvf FileName.tar #解包
tar -cvf FileName.tar DirName #打包(与'压缩'这一概念区分开来)
#.tar.gz和.tgz
tar -zxvf FileName.tar.gz #解压
tar zcvf FileName.tar.gz DirName #压缩
1-2 软件文件夹(/usr/local/software)
mkdir java
mv /opt/java/JDK8 ./java/
1-3 配置文件修改环境变量(/etc/profile)
vim /etc/profile
#...(进入配置文件)
#按下 shitf g 进入文件末尾
#文件末尾对环境变量进行添加
export JAVA_HOME=/usr/local/software/java/JDK8 #设置JAVA_HOME环境变量
export PATH=$PATH:$JAVA_HOME/bin #添加JAVA_HOME进PATH中
#Esc退出编辑模式,输入':wq'保存编辑并退出
source /etc/profile #重新加载配置文件,使修改生效
1-4 查看Java环境变量
java -version
javac -version #若能成功显示JDK版本则说明环境变量生效
2 Mysql
2-1 卸载MariaDB
rpm -qa | grep mariadb #查询是否安装 'mariadb'
rpm -e mariadb-libs-5.5.60-1.el7_5.x86_64 --nodeps #删除相关包:这个名字是上面查询出来的相关包,包删除需要某些依赖, 'nodeps'表示无视依赖强制删除
rm -rf /etc/my.cnf #删除配置文件:'mariadb'也会有和mysql安装同样名字的配置文件,需要删除
rm -rf /var/lib/mysql/ #删除数据目录:参考网上的删除,我自己lib下没有mysql的数据目录
2-2 MySQL的安装
2-2-1 压缩包的解压与移动
#在下载文件夹中创建MySQL目录,并上传和解压MySQL的官方压缩包,并对解压后的文件夹重命名
cd /opt #进入/opt
mkdir mysql
#...(上传压缩包)
#Tips:MySQL官方有三种压缩包,一种是.tar.gz的,一种是-test-***.tar.gz的和包含以上两者的.tar压缩包。如果是下载了.tar压缩包,需要先解压这个获得.tar.gz压缩包,再对这个进行解压
tar -zxvf mysql-5.7.37-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.37-linux-glibc2.12-x86_64 mysql-5.7
#在软件文件夹中创建MySQL目录,在目录下创建数据目录data,并将上面解压的文件夹移至软件文件夹的MySQL目录下
cd /usr/local/software
mkdir mysql
cd mysql
mkdir data
mv /opt/mysql/mysql-5.7 ./
2-2-2 创建用户组和用户,并修改权限
groupadd mysql #创建用户组
useradd -r -g mysql mysql #创建用户mysql进用户组mysql
chown mysql:mysql -R /usr/local/software/mysql #将MySQL目录的拥有权限赋予给用户mysql
#Tips:可以在修改完权限后,通过 'll' 命令对文件的拥有者进行查看
2-2-3 MySQL配置文件修改
vim /etc/my.cnf #配置 my.cnf
# 配置文件内容如下:
# 其中 basedir datadir log-error pid-file 都要根据之前自己定义的包进行相应修改
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/software/mysql/mysql-5.7
datadir=/usr/local/software/mysql/data
socket=/tmp/mysql.sock
log-error=/usr/local/software/mysql/data/mysql.err
pid-file=/usr/local/software/mysql/data/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true
2-2-4 MySQL的初始化
#进入MySQL的bin目录
cd /usr/local/software/mysql/mysql-5.7/bin
#初始化MySQL(推荐先用Notepad++编辑好再粘贴进XShell里面)
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/software/mysql/mysql-5.7/ --datadir=/usr/local/software/mysql/data/ --user=mysql --initialize
2-2-5 MySQL的启动及root密码修改
- MySQL服务注册和启动
#查看密码(数据目录下的错误日志会记载密码信息)
cat /usr/local/software/mysql/data/mysql.err
#将mysql.server放置到 /etc/init.d/mysql 中,‘mysql’之后就是MySQL服务的名字
cp /usr/local/software/mysql/mysql-5.7/support-files/mysql.server /etc/init.d/mysql
#启动MySQL服务
service mysql start
#...(此处会有一些服务启动成功的提示,有的是SUCCESS、我的是[OK])
#不确定是否启动成功可以使用ps操作查看进程
ps -ef|grep mysql
- root用户密码修改
#登录MySQL界面
cd /usr/local/software/mysql/mysql-5.7/bin #进入MySQL的bin目录
./mysql -u root -p #bin目录下
#登录进去后,在 mysql> (MySQL控制界面)下执行密码修改
SET PASSWORD = PASSWORD('123456');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;
exit #离开MySQL控制界面
2-2-6 访问权限设置
- 此时远程连接服务器的数据库是不能访问的,需要在MySQL中进行额外设置
#登录MySQL界面
cd /usr/local/software/mysql/mysql-5.7/bin #进入MySQL的bin目录
./mysql -u root -p #bin目录下
#...(输入密码)
use mysql #访问mysql库
update user set host = '%' where user = 'root'; #使root能再任何host访问
FLUSH PRIVILEGES; #刷新
3 Redis
3-1 gcc编译环境安装
- redis的安装需要对redis的源码进行编译,因而要提前准备编译环境
#1.确保root登录 2.确保Linux要能连外网
yum -y install gcc automake autoconf libtool make
3-2 Redis压缩包下载与解压
mkdir /opt/redis #在下载目录 /opt 中创建redis文件夹
cd /opt/redis #进入redis文件夹
wget http://download.redis.io/releases/redis-4.0.1.tar.gz #下载redis压缩包
tar -zxvf redis-4.0.1.tar.gz #解压压缩包
mkdir /usr/local/software/redis
mv redis-4.0.1 /usr/local/software/redis/
3-3 Redis源文件编译和Redis的安装
cd /usr/local/software/redis/redis-4.0.1
#编译源文件
make
#...编译成功会显示:Hint:It's a good idea to run 'make test';的字样
#...如果编译失败需要将redis源文件(即redis-4.0.1)全部删去重新解压
cd /usr/local/software/redis/redis-4.0.1/src
#在redis目录下(注意不是redis-4.0.1)安装redis
make PREFIX=/usr/local/software/redis install
#...若安装路径下多了一个bin目录则说明安装成功,如果安装失败将源文件删去重新解压
/usr/local/redis/bin下的可执行文件作用:
可执行程序名 | 相关解释 |
---|---|
redis-benchmark | 性能测试工具 |
redis-check-aof | AOF文件修复工具 |
redis-check-dump | RDB文件检查工具(快照持久化文件) |
redis-cli(常用) | 命令行客户端 |
redis-server(常用) | redis服务器启动命令 |
3-4 Redis配置文件修改
#复制redis源文件(即redis-4.0.1)中的配置文件进redis的主目录,方便管理
cp /usr/local/software/redis/redis-4.0.1/redis.conf /usr/local/software/redis
#修改配置文件名(6666是redis的启动端口号)
mv redis.conf 6666.conf
#修改配置文件
vim /usr/local/software/redis/6666.conf
#配置文件内容:(在配置文件中找一找对应的位置)
#这里的bind指的是只有指定的网段才能远程访问这个redis,注释掉后,就没有这个限制了
#bind 127.0.0.1
#默认是设置成yes的, 防止了远程访问,在redis3.2.3版本后
protected-mode no
#设置后台运行
daemonize yes
#设置端口
port 6666
#设置数据库总量
databases 32
#设置密码(默认密码为空),在配置文件中找到这一行 # requirepass foobared
requirepass 123456
#设置日志文件
logfile ./redislog.log
#设置数据文件存储目录
dir ./
3-5 Redis的启动与使用
cd /usr/local/software/redis/bin #进入redis的bin文件夹
./redis-server ../6666.conf #指定配置文件启动,如果不选择配置文件则按照redis默认文件进行启动
#...(此时已经成功启动redis),可以通过ps命令查看redis进程
ps -ef | grep redis
#...(有显示port:6666的redis进程则说明启动成功)
./redis-cli -p 6666 -a 123456 #连接redis(-p代表端口,-a代表连接redis的密码)
#...(以下是redis客户端操作)
>ping #检测redis是否连接成功(连接成功会显示PONG)
>shutdown #停止redis
3-6 Redis注册开机自启服务
3-6-1 复制并修改redis服务脚本
#将redis服务脚本(utils/redis_init_script)复制到 /etc/init.d 目录下
cp /usr/local/software/redis/redis-4.0.1/utils/redis_init_script /etc/init.d/
#进入init.d目录并将脚本更名为redis,便于管理
cd /etc/init.d
mv ./redis_init_script redis
#修改服务脚本
vim ./redis
#修改内容如下:
REDISPORT=6666
#安装时生成的bin目录下的可执行文件
EXEC=/usr/local/software/redis/bin/redis-server #服务端所处位置
CLIEXEC=/usr/local/software/redis/bin/redis-cli #客户端位置
PIDFILE=/var/run/redis_${REDISPORT}.pid #Redis的PID文件位置
#指定redis启动的配置文件,和之前的配置文件名 6666.conf 对应
CONF="/usr/local/software/redis/${REDISPORT}.conf"
#添加一个密码变量,用于停止redis的服务($2表示接收第二个参数)
PASSWORD=$2
#修改stop块中的 '$CLIEXEC -p $REDISPORT shutdown'
$CLIEXEC -a $PASSWORD -p $REDISPORT shutdown
#...修改完之后保存退出
#增加脚本文件执行权限
chmod +x ./redis
3-6-2 加入脚本进开机启动项
#加入脚本进开机启动项
chkconfig --add redis
#查看开机自启动项
chkconfig --list
#...若可以看到redis的名字则说明注册开机自启服务成功
* BUG记录:出现 ‘service redis does not support chkconfig’提示
- 需要将以下两行注释放在redis脚本指定的配置文件靠前的位置(我是根本没这俩注释)
vim /usr/local/software/redis/6666.conf
#配置文件要增加的注释内容:
# chkconfig: 2345 90 10
# description: Redis is a persistent key-value database
#...此时再重新加入开启启动项就不会报错了
3-6-3 服务主动启动与停止
service redis start
#若密码输入错误,服务会不断尝试连接redis客户端报出异常信息,按可退出,重新停止
service redis stop 123456
若使用ctrl+Z挂起任务,连接服务不会退出而是会被暂停挂起
#解决办法
jobs -l #查询被挂起的进程,观察其pid
kill -9 被挂起进程的pid
4 Nginx
4-1 环境依赖包
- 如果依赖已经安装,则不会继续安装
yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel
4-2 上传并解压安装包
mkdir /opt/nginx
cd /opt/nginx
#....(上传文件)
tar -zxvf nginx-1.20.2.tar.gz
mkdir /usr/local/software/nginx
mv nginx-1.20.2 /usr/local/software/nginx
4-3 Nginx编译和安装
- 进入编译文件目录(nginx-1.20.2)
cd /usr/local/software/nginx/nginx-1.20.2
- 使用configure命令创建一makeFile文件
- 建议在notepad中编辑好再粘贴进XShell使用;特别注意prefix的值,表示nginx安装的路径
./configure \
--prefix=/usr/local/software/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi \
--with-http_stub_status_module \
--with-http_ssl_module \
--with-file-aio \
--with-http_realip_module
- 编译安装(还是在同一个目录(nginx-1.20.2))
make
make install
4-4 Nginx启动和端口设置
- Nginx端口设置
vim /usr/local/software/nginx/conf/nginx.conf
#监听端口处更改80为8089(大致在文件36行左右,通过 '36+GG' 可进行定位)
- Nginx启动
cd /usr/local/software/nginx/sbin
./nginx
Nginx命令一览
./nginx #开启
./nginx -s stop #关闭
./nginx -s reload #重启
4-5 端口开放
- 服务器则需要设置安全组的规则配置(具体操作略)
- 防火墙启动了得打开相应端口
常用防火墙命令(firewalld)
#防火墙服务相关命令
systemctl start firewalld.service #打开防火墙
systemctl stop firewalld.service #关闭防火墙
systemctl enable firewalld.service #开机自启用
systemctl disable firewalld.service #开机禁用自启动
systemctl is-enabled firewalld.service #查看服务是否开机自启动
#防火墙端口相关命令
firewall-cmd --zone=public --add-port=80/tcp --permanent #永久打开tcp 80端口
firewall-cmd --zone=public --remove-port=80/tcp --permanent #永久删除tcp 80端口
firewall-cmd --zone=public --add-service=https --permanent #永久打开https服务
firewall-cmd --zone=public --list-ports #查看所有打开的端口
firewall-cmd --reload #更新防火墙规则,修改防火墙规则后,需要重新载入