1,安装jdk(所有不存在的路径都需要进行创建)
1.1, 将Linux版本的jdk上传到以下路径:
/opt/install-packages/
1.2, 解压安装包到/opt/java/路径下:
tar -zxvf /opt/install-packages/jdk-8u111-linux-x64.tar.gz -C /opt/java/
1.3,配置环境变量:
1.3.1, 编辑配置文件:
vim /etc/profile
1.3.2,在最末尾添加 以下内容:
export JAVA_HOME=/opt/java/jdk1.7
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=,:${JAVA_HOME}/lib:${JAVA_HOME}/lib
export PATH=${JAVA_HOME}/bin:${PATH}
1.3.3,执行文件
source /etc/profile
1.3.4,查看是否安装成功:
java -version
2,安装mvn
2.1,将Linux版本的mvn安装包解压到以下路径
/opt/install-packages/
2.2,解压缩到以下路径:
tar -zxvf /opt/install-packages/apache-maven-3.0.5-bin.tar.gz -C /opt/mvn/
2.3,配置环境变量:
vim /etc/profile
2.4,在最后添加如下内容
export M2_HOME=/opt/mvn
export PATH=${PATH}:${JAVA_HOME}/bin:${M2_HOME}/bin
2.5,执行配置文件
source /etc/profile
2.6,查看是否安装成功
mvn -v
3,安装Tomcat
3.1,将下载好的linux版本的Tomcat上传到指定目录下,执行以下命令解压
tar -zxvf /opt/install-packages/apache-tomcat-7.0.92.tar.gz
3.2,修改端口
vim /opt/tomcat7/tomcat/conf/server.xml #路径为自己Tomcat的路径
将找到<Connector port="10086" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />修改其中的port值为自己喜欢的端口号
3.3,防火墙开放10086端口
firewall-cmd --zone=public --add-port=10086/tcp --permanent
systemctl reload firewalld
3.4,重启Tomcat(注意路径为自己的路径)
/opt/tomcat7/tomcat/bin/shutdown.sh
/opt/tomcat7/tomcat/startup.sh
3.4,测试是否安装成功 : 浏览器访问: http://yourIp:10086
4,yum安装MySQL5
4.1,查找安装包 在linux目录下 执行
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm #下载rpm
4.2,删除多余的安装包
yum list installed | grep mysql #查看安装包,若存在则删除
yum -y remove mysql+上一条命令查看的结果
4.3,删除mariadb
rpm -qa | grep mariadb #查看mariadb
rpm -e --nodeps <上一命令查到的文件名> #强制删除
4.3,开始安装
——配置
rpm -ivh
<刚刚下载的包名>
yum repolist all | grep mysql
——安装
yum install mysql-community-server -y #安装 chkconfig mysqld on #设置开机启动
——修改root密码
1,vim /etc/my.cnf #编辑配置文件,如下添加
,
2,service mysqld restart #重启mysql
3,mysql #免密码登录mysql
use mysql #切换数据库
4,重置密码
update user set authentication_string=password('123456') where user='root';
5,flush privileges #刷新权限
以下红色部分为mysql8的密码修改方式
(
<1> show variables like '%validate_password%' #查看密码规则如下所示
<2>set global validate_password_policy=LOW; #当前规则比较复杂,设置为只校验长度,不小于8
PS:中级的密码是要特殊符号、大小写字母和数字组成,且长度不小于8
<3> select user,host from user; #查看主机
<4> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'yourPassword'; #修改密码,注意长度
<5> flush privileges #刷新权限
)
#如接下来的操作出现错误
则需要取消默认密码强度
在配置文件my.cnf中添加
validate_password=OFF,然后重启MySQL。alter user user() identified by "123456"; #重置密码就ok了
6,exit: #退出登录
修改并重启
7,vim /etc/my.cnf
8,service mysqld restart; #重启
9,mysql -uroot -p密码 #登录
——设置root允许远程连接
1,vim /etc/my.cnf #编辑配置文件
port=3306
bind-address=0.0.0.0
character-set-server=utf8,
[mysql]
default-character-set=utf82,GRANT ALL ON *.* TO root@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;
mysql8: GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'; #授权远程登录
flush privileges;
3,防火墙开放3306端口并重启
firewall-cmd --zone=public --add-port=3306/tcp --permanentsystemctl reload firewalld
PS:由于安装mysql时需要下载包比较慢,提供一种离线安装的方法
——找个好的网络在官网下载完整的包
——安装
其他的步骤和问题的处理办法和上边的安装一样,不同的是
1,步骤4.1就不用了
2,步骤4.3改为以下做法:
——将下载好的包用 tar -xf 解压一下,就可以看到很多个安装包了,按顺序逐一执行以下安装命令,当然,包名根据自己下载的包名改变:
rpm -ivh mysql-community-common-5.7.27-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.27-1.el7.x86_64.rpm
rpm -ivh mysql-community-devel-5.7.27-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-5.7.27-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.27-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.27-1.el7.x86_64.rpm
——安装过程可能会出现错误
error: Failed dependencies:
libnuma.so.1()(64bit) is needed by mysql-community-server-5.7.28-1.el7.x86_64——这时候执行以下命令安装一下依赖,在从错误的地方继续安装就可以了
sudo yum -y install numactl
5 , 安装Nginx
5.1,准备环境
1,安装gcc。(nginx的编译依赖于gcc)
yum install gcc-c++
2,安装pcre。(pcre是一个perl库,nginx 的 http 模块需要使用 pcre 来解析正则表达式)
yum install --setopt=protected_multilib=false pcre pcre-devel
3,安装zlib。(zlib 提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip )
yum install -y zlib zlib-devel --setopt=protected_multilib=false
4,安装openssl。(对https的支持)
yum install -y openssl openssl-devel
5.2,安装Nginx
1,到Nginx官网下载安装包,http://nginx.org/en/download.html,并将得到的压缩包放到服务器的/usr/local/nginx目录下(不存在的目录自己新建)
2,解压缩
tar -zxvf nginx-1.16.0.tar.gz
3,配置
cd nginx-1.16.0
./configure
4,编译并安装
make
make install
5,启动
whereis nginx #该命令可以找到Nginx的安装目录
#进入安装目录下的sbin目录
./nginx #启动
./nginx -s stop #停止,立即停止
./nginx -s quit #停止,待Nginx任务执行完后停止
./nginx -s reload #重新加载
6,配置Nginx开机启动
vim /etc/rc.local #在该文件末尾加上:/usr/local/nginx/sbin/nginx
chmod 755 /etc/rc.local #设置权限
5.3,配置
vim /usr/local/nginx/conf/nginx.conf
修改内容如下
5.4,配置vue项目使用nginx转发
——配置
server {
listen 8080; #监听8080端口
server_name 129.210.94.132; #服务器公网iplocation / {
root /home/admin/apps/vues/shoper/dist; #place static and index.html under dir dist here
index index.html index.htm;
try_files $uri $uri/ /index.html;
}
location /api/ {
proxy_pass http://127.0.0.1:9000; #这里是vue项目访问后台服务器地址的转发
}
}
——重新加载配置
sudo /usr/local/nginx/sbin/nginx -t #检查配置文件语法,看提示如果没问题,接下来
sudo /usr/local/nginx/sbin/nginx -s reload #重新加载配置文件
——访问,浏览器输入http://ip:port , 这时候可能会报错500,此时查看nginx日志
less /usr/local/nginx/logs/error.log,如果是如下错误日志
stat() "/home/admin/apps/vues/shopper/dist/index.html" failed (13: Permission denied)
说明是nginx的运行用户没有访问vue项目的权限,给nginx配置上有访问权限的用户,如下
sudo viim /usr/local/nginx/conf/nginx.conf
在最开始的位置加上
user admin; #如果原来有存在就修改,然后reload一下nginx就可以解决了
6,安装redis
6.1,在官网http://download.redis.io/releases下载自己需要的tar安装包,并放在/usr/local/目录下
6.2,安装
tar -zxvf redis-5.0.5.tar.gz #解压
yum install -y gcc #安装gcc,用于redis安装时的编译
make MALLOC=libc #编译,该命令需要在redis个目录(redis-5.0.5)下执行
# 以下命令将/usr/local/redis-5.0.5/src目录下的文件加到/usr/local/bin目录
cd src
make install
# 启动redis,如果如下图所示,则安装成功
/usr/local/redis-5.0.5/src/redis-server
6.3,配置
vim /usr/local/redis-5.0.5/redis.conf
修改如下几点:
1,允许远程连接
找到 bind 127.0.0.1,将其注释掉,即在行首加“#”
2,将redis以守护进程的方式运行,即可以运行在后台
找到 daemonize no,改为 daemonize yes
3,设置密码
找到 requirepass 的地方,然后添加一行: requirepass 你的密码
#配置保存后,执行以下命令更新配置
/usr/local/bin/redis-server /usr/local/redis-5.0.5/redis.conf
6.4,配置redis开机启动
mkdir /etc/redis #创建目录
cp /usr/local/redis-5.0.5/redis.conf /etc/redis/redis6379.conf #复制配置文件,并重命名
cp /usr/local/redis-5.0.5/utils/redis_init_script /etc/init.d/redisd #复制启动脚本
cd /etc/init.d/ #进入目录
chkconfig redisd on #执行命令
====================一下是常用命令===========
#设置密码后,需要如下关闭
/usr/local/bin/redis-cli -p 6379 -a 密码 shutdown
# 客户端连接redis
/usr/local/bin/redis-cli -a 密码
#启动,指定加载哪个配置文件
/usr/local/bin/redis-server /etc/redis/6379.conf
vim相关
查找和替换相关(命令行模式下)
/b :查找b
n:查找下一个
N:查找上一个:%s/aa/bb/g 替换每一行中所有 aa 为 bb
:s/aa/bb/g 替换当前行所有 aa 为 bb
:s/aa/bb/ 替换当前行第一个 aa 为bb
退出和保存相关
:q 退出
:wq 保存并退出
:q! 强制退出
:w 保存
:w! 强行保存
删除
dG 从光标所在位置删除到最后一行(ps: G表示到最后一行, gg表示到首行)
x 删除光标所在位置的字符
X 删除光标左边的字符
dd 删除当前行
D 删除光标到行尾的内容
撤销和恢复相关(命令行模式下)
u 撤销
ctrl+r 恢复
日志查看和分析
sort和uniq
sort 用于对内容进行排序,可用参数:
-r 倒序排序
-u 重复行只输出一行
-o <filename> 将排序结果输出到filename这个文件中
-c 检查文件内容是否有序
-n 按照数字大小排序(不然有时候会出现10比2小的情况)
配合head、tail、sed命令使用
head -10 <filename> | sort 对指定文件前10行排序
tail -10 <filename> | sort 对指定文件后10行排序
sed -n '4,8p' <filename> | sort 对文件4到8行进行排序
uniq命令用于去除重复的行,但是前提是重复的行必须在相邻位置,所以可以和sort组合使用:参数:
-c 输出对应内容的行数量
-D 输出重复内容
-i 忽略大小写
-s n 比较时跳过前n个字符
-u 只显示仅有唯一一行的行
sort和uniq配合使用:
sort <filename> | uniq -c 输出文件中每一个重复行的数量
其他综合
1, 查找文件位置:
find / -name <文件名字> #PS:("/":从根目录开始查找,也可以从其他路径开始查找)
2,查看ip(centos7)
ip addr
curl icanhazip.com #查看外网ip
3,防火墙相关
查看状态:firewall-cmd --state
启动: systemctl start firewalld
关闭: systemctl stop firewalld
永久开放端口:已8080为例
firewall-cmd --zone=public --add-port=8080/tcp --permanent
#安装
service iptables status #查看是否安装了
yum install -y iptables #安装
yum update iptables #更新
yum install iptables-services #安装服务
systemctl mask firewalld #禁用原来的防火墙
systemctl start iptables #启动
#初始化配置
iptables -F #清空所有默认配置
iptables -X #清空所有自定义规则
iptables -Z #所有计数器归0
iptables -A INPUT -p tcp --dport 80 -j ACCEPT #添加80端口,类似的方式添加22端口
#测试通过之后
service iptables save #保存规则
iptables -L -n #查看所有规则
#配置
vim /etc/sysconfig/iptables
systemctl restart iptables.service #重启防火墙使配置生效
systemctl enable iptables.service #设置防火墙开机启动