目录
1、 在/下创建soft目录,将JDK复制到Linux的soft目录下
2 、进入/soft目录,解压jdk到指定目录/usr/local下
3、 进入目录/usr/local下,查看是否有名为jdk1.8.0_221的目录
4、配置jdk环境变量,打开/etc/profile配置文件,添加下列内容.(export命令用于将shell变量输出为环境变量)
参考资料:
mysql5.7安装完成后密码是多少_Mysql 5.7 安装后root密码设立_mysql_Cold flowers的博客-CSDN博客
Your password does not satisfy the current policy requirements_一尘在心的博客-CSDN博客
软件安装命令
- rpm软件管理器命令(可以用于离线的安装)
# 查看所有安装的软件
rpm -qa
# 查看gcc-c++这个软件包是否安装
rpm -q gcc-c++
# 安装指定的软件
rpm -ivh 软件名
# 删除指定的软件
rpm -ev 软件名
- yum软件安装和删除命令(可以用在线的安装)
# 在线安装gcc-c++
yum -y install gcc-c++
# 删除gcc-c++
yum -y remove gcc-c++
一、JDK安装
1、 在/下创建soft目录,将JDK复制到Linux的soft目录下
mkdir /soft
cd /soft
2 、进入/soft
目录,解压jdk到指定目录/usr/local
下
tar -xvf jdk-8u221-linux-x64.tar.gz -C /usr/local/
3、 进入目录/usr/local
下,查看是否有名为jdk1.8.0_221的目录
cd /usr/local
ls
4、配置jdk环境变量,打开/etc/profile
配置文件,添加下列内容.(export命令用于将shell变量输出为环境变量)
- Linux下路径之间使用冒号分隔,windows下使用分号分隔
- 引用变量的方式不同,引用JAVA_HOME
- windows: %JAVA_HOME%
- Linux:$JAVA_HOME
- windows下路径之间分隔符使用\,而Linux下使用/
使用命令vim /etc/profile
, 在文件末尾处,将下列内容复制,保存退出.
#set java environment
JAVA_HOME=/usr/local/jdk1.8.0_221
CLASSPATH=.:$JAVA_HOME/lib
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH
5 、重新加载/etc/profile
配置文件
source /etc/profile
6、 判断JDK是否安装成功
java -version
二、Mysql安装
MySQL安装与卸载
因在新的云服务器环境中,MySQL安装过程中出现多次问题,故新增一个安装删除部分,作为填坑记录.
1 、卸载
yum卸载
# 查看yum是否安装mysql 如有列表,则为安装
yum list installed mysql*
# 卸载mysql
yum remove mysql-community-client mysql-community-common mysql-community-libs mysql-community-libs-compat mysql-community-server mysql57-community-release
# 删除相关配置
rm -rf /var/lib/mysql
rm /etc/my.cnf
rpm方式
# 查看是否安装
rpm -qa | grep -i mysql
# 卸载mysql
rpm -e mysql57-community-release-el7-9.noarch
rpm -e mysql-community-server-5.7.17-1.el7.x86_64
rpm -e mysql-community-libs-5.7.17-1.el7.x86_64
rpm -e mysql-community-libs-compat-5.7.17-1.el7.x86_64
rpm -e mysql-community-common-5.7.17-1.el7.x86_64
rpm -e mysql-community-client-5.7.17-1.el7.x86_64
cd /var/lib/
rm -rf mysql/
# 清除余项
whereis mysql
# 输出的相关文件: /usr/share/mysql
# 删除上面的所有文件夹
rm -rf /usr/share/mysql
# 删除配置
rm –rf /usr/my.cnf
rm -rf /root/.mysql_sercret
# 配置检查
chkconfig --list | grep -i mysql
chkconfig --del mysqld
2、安装
yun安装
# 配置源
wget http://repo.mysql.com/mysql57-community-release-el7-9.noarch.rpm
sudo rpm -ivh mysql57-community-release-el7-9.noarch.rpm
# 检查更新yum软件包
yum check-update
# 更新yum
yum update
# 安装mysql
yum install mysql mysql-server
rpm安装
# 上传MySQL安装包mysql-community-5.6.45.tar.gz到soft目录下, 并创建mysql目录,将压缩包解压到mysql目录.
mkdir mysql
tar -xvf mysql-community-5.6.45.tar.gz -C mysql
# 进入mysql目录,安装所有的rpm文件,强制安装,不检测依赖
rpm -ivh * --force --nodeps
# 检查安装好的mysql包
rpm -qa |grep mysql
3 、使用
# 启动mysql
systemctl start mysqld
# 将mysql加到系统服务中并设置开机启动
systemctl enable mysqld
# 登录mysql
mysql -u root
# 在mysql中修改自己的密码
set password = password('密码');
# 设置远程访问权限、开放端口号
# 在mysql中操作:开启mysql的远程登录权限,默认情况下mysql为安全起见,不支持远程登录mysql,所以需要设置开启,并且刷新权限缓存.
# 给root指定所有的权限,在任何电脑上可以远程登录,注:密码与上面的密码相同
grant all privileges on *.* to 'root'@'%' identified by 'root';
# 从mysql数据库中的授权表重新载入权限
flush privileges;
# 开放Linux的对外访问的端口3306
#开放的端口永久保存到防火墙
firewall-cmd --zone=public --add-port=3306/tcp --permanent
#重启防火墙
systemctl restart firewalld
如果没有输入密码,登录报错.则采用下列方法:
- 1 修改 /etc/my.cnf ,在 [mysqld] 下添加一行: skip-grant-tables=1 让mysqld 启动时不对密码进行验证
- 2 重启 mysqld 服务:systemctl restart mysqld
- 3 使用 root 用户登录到 mysql:mysql -u root
- 4 切换到mysql库,更新user表
use mysql;
-- 在之前的版本中,密码字段的字段名是 password,5.7版本改为了 authentication_string
update user set authentication_string = password('root'), password_expired = 'N', password_last_changed = now() where user = 'root';
-
5 退出 mysql,编辑 /etc/my.cnf 文件,删除 skip-grant-tables=1 的内容
-
6 重启 mysqld 服务,再用新密码登录即可
4、mysql开启远程访问权限
-- 给root指定所有的权限,在任何电脑上可以远程登录,注:密码与上面的密码相同
grant all privileges on *.* to 'root'@'%' identified by 'root';
-- 从mysql数据库中的授权表重新载入权限
flush privileges;
上述开放权限时,报错: error no. 1045 access denied for user ‘root’@’*’ (using password:YES)
原因: MySQL出于安全方面考虑默认只允许本机(localhost, 127.0.0.1)来连接访问.
解决远程访问
-- 123456为你给新增权限用户设置的密码,%代表所有主机,也可以具体到你的主机ip地址
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456'
-- 从mysql数据库中的授权表重新载入权限
flush privileges;
上述添加用户密码,会报错: ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
原因:MySQL密码策略问题异常信息.
修改密码策略
-- 查看初始密码策略
SHOW VARIABLES LIKE 'validate_password%';
-- 设置密码强度为低等,默认是中等 设置 validate_password_policy 的全局参数为 LOW
set global validate_password_policy=LOW;
-- 修改密码长度为6, 默认为8, 设置validate_password_length=6
set global validate_password_length=6;
-- 现在可以修改密码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456'
密码策略参数说明:
- 1 validate_password_length 固定密码的总长度
- 2 validate_password_dictionary_file 指定密码验证的文件路径
- 3 validate_password_mixed_case_count 整个密码中至少要包含大/小写字母的总个数
- 4 validate_password_number_count 整个密码中至少要包含阿拉伯数字的个数
- 5 validate_password_policy 指定密码的强度验证等级,默认为 MEDIUM
LOW:只验证长度
MEDIUM:验证长度、数字、大小写、特殊字符
STRONG:验证长度、数字、大小写、特殊字符、字典文件
- 6 validate_password_special_char_count 整个密码中至少要包含特殊字符的个数
三、redis安装
1、安装过程:
- 安装编译环境并且编译(已经安装好:gcc-c++)
- 解压redis的c语言源代码,使用gcc-c++进行编译和安装
- 启动运行,并且设置成后台运行
- 如果要在客户端去访问,必须打开防火墙6379端口号
- 设置IP地址的bind这台服务器
1、redis是C语言开发,安装redis需要先将官网下载的源码进行编译,编译依赖gcc环境.
# 在线安装 gcc
yum -y install gcc-c++
2、上传redis安装包redis-3.2.11.tar.gz
到Linux系统/soft目录下, 进入soft目录,将redis-3.2.11.tar.gz
解压到当前目录
cd /soft
tar -xvf redis-3.2.11.tar.gz
3、进入redis-3.2.11目录,使用make命令编译redis
make
4、在redis-3.2.11目录中,使用以下命令,将redis安装到/usr/local/redis指定的目录下
make PREFIX=/usr/local/redis install
安装成功后在/usr/local/redis/bin目录下可以看到文件夹,redis.conf文件还没有,要从刚解压的目录下复制过来
2、启动
前端模式启动:
直接运行bin/redis-server以前端模式启动,前端模式启动的缺点是启动完成后,不能再进行其他操作,如果要操作必须使用ctrl+c,同时redis-server程序结束,不推荐使用此方法.
# 前端模式运行
./redis-server
# 停止
使用CTRL+ C 停止前端模式
后端模式启动:
1 、将之前解压出来的/soft/redis-3.2.11/redis.conf
配置文件复制到安装好的/usr/local/redis/bin/
目录下
2、 修改redis.conf配置文件,修改daemonize yes 以后端模式启动
vim redis.conf
3 、启动时,指定配置文件
cd /usr/local/redis/bin
./redis-server redis.conf
4 查看启动的后台进程
ps -aux | grep redis
3、启动客户端
1 、进入redis/bin目录,启动redis-cli
./redis-cli
2 、操作Redis,添加一个字符串的键,显示字符串的键,删除字符串的键
4、停止redis
在客户端向Redis发送shutdown命令
- 在Linux命令行下输入 ./redis-cli shutdown
- 在Redis客户端里面输入shutdown
5 、远程访问Redis
#开放的端口永久保存到防火墙
firewall-cmd --zone=public --add-port=6379/tcp --permanent
#重启防火墙
systemctl restart firewalld
使用windows下的客户端软件连接,发现客户端依然无法连接redis,这是由于redis本身安全机制的限制,默认只允许本机访问.
1 、默认redis只允许本机访问,如果想要其它机器访问,需要编辑redis.conf配置内容如下,添加当前Linux局域网的IP地址
bind 127.0.0.1 192.168.248.99
2 、关闭redis,再重新启动Redis读取新的配置文件,才会起作用
./redis-cli shutdown
./redis-server redis.conf
3 、即可使用Windows的redis客户端访问Linux服务器上Redis服务器
4、Tomcat安装
1 、将Tomcat软件包上传到soft文件夹,解压Tomcat到/usr/local下
tar -xvf apache-tomcat-8.5.27.tar.gz -C /usr/local/
2 、开放Linux的对外访问的端口8080
firewall-cmd --zone=public --add-port=8080/tcp --permanent
3 、重启防火墙,进入/usr/local/apache-tomcat-8.5.27/bin
目录,启动Tomcat
# 重启防火墙
systemctl restart firewalld
# 启动Tomcat
./startup.sh
4 、在Windows下访问Linux的8080端口
5 、进入bin目录下,关闭服务器。
./shutdown.sh
5、nginx 安装
Nginx: 一种服务器软件,使用C和C++语言开发,还是一种高性能的HTTP反向代理服务器,同时也是一个代理邮件服务器。
作用:
- 发布静态网站
- 实现反向代理
- 实现负载均衡
- 邮件服务器
1、安装部分
yum[参数][命令] | 说明 |
---|---|
参数: -y | 当安装过程提示全选"yes" |
命令: install | 安装指定的包 |
命令: remove | 删除指定的包 |
1 、安装C++的编译环境:因为Nginx是C语句开发的.
yum -y install gcc-c++
2 、安装Nginx依赖环境
# 正则表达式的库:
yum -y install pcre pcre-devel
# 数据压缩的库:
yum -y install zlib zlib-devel
# 安全证书的库:
yum -y install openssl openssl-devel
# 依次运行上面三个 或者 运行下面一个
yum -y install pcre pcre-devel zlib zlib-devel openssl openssl-devel
3 、上传nginx安装包/soft目录下,解压到/usr/local目录。
tar -xvf nginx-1.15.3.tar.gz -C /usr/local
4 、配置,在nginx-1.15.3目录下,执行configure文件
./configure
5 、安装,在nginx-1.15.3的解压目录下编译与安装nginx
make && make install
6 、安装后目录说明
- conf 配置文件夹
- html 项目部署
- logs 日志记录
- sbin 可执行文件
7 、启动,进入sbin目录启动nginx服务器, 开放防火墙80端口
# 启动nginx
./nginx
# 开放防火墙80端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
# 重启防火墙
systemctl restart firewalld
8 、在Windows中直接访问(nginx默认80端口)
2、在nginx上部署静态网站
启动与关闭的命令 | 说明 |
---|---|
./nginx | 启动nginx |
./nginx -s reload | 重新加载配置文件 |
./nginx -s stop | 关闭服务器1 |
1 、将静态资源上传到服务器/project文件下
2 、进入/usr/local/nginx/conf配置目录修改nginx.conf文件(每行以分号结束)
server {
listen 80; # 默认端口
server_name localhost; # 服务器名称
location / {
root /project; # 访问指定的目录
index index.html index.htm; # 首页页面
}
...
}
3 、进入sbin目录,重新加载nginx的配置文件,通过Windows访问测试
3 、nginx反向代理
配置参数 | 说明 |
---|---|
upstream 代理名{ server 服务器地址和端口号; } | 用于配置代理服务器的地址和端口 |
location / { proxy_pass http://代理名; } | 指定访问的根目录是代理服务器 |
1 、修改配置文件nginx/conf/nginx.conf,在http的server的上面添加反向代理的定义
# 增加反向代理指向tomcat
upstream project {
server localhost:8080;
}
2、 注释了root html,不再访问html目录下面的文件,增加proxy_pass定义
server {
listen 80;
server_name localhost;
location / {
# root html;
index index.html index.htm;
# 访问tomcat
proxy_pass http://project;
}
}
3 、重启nginx,配置文件变动后需要重启才能生效
./nginx -s reload
4 、使用浏览器访问nginx,发现访问的是Tomcat,nginx起到了代理Tomcat的作用.
4 、正向代理 服务器
正向代理类似一个跳板机,代理局域网内部的机器访问外部互联网的资源.
作用:
- 访问原来无法访问的资源(如Google)
- 可以做缓存,加速访问资源
- 对客户端访问授权,上网进行认证
- 代理可以记录用户访问记录,对外隐藏用户的信息
特点: 客户机与代理服务器在同一个局域网中.
6、发布项目到Linux
1 、先将本地数据库脚本导出,导入到Linux中Mysql数据库.(Linux中表名区分大小写,windows下sql语句不区分大小写的,但Linux中默认是区分大小写的)
2 、如果是SSM项目,在项目out目录,将所有文件打包zip,修改扩展名为war,将war文件上传到Linux中tomcat/webapps目录下,启动tomcat即可.
3 、如果是SpringBoot项目, 获取项目jar包.上传Linux服务器,可直接java -jar jar包名启动\
可能出现的问题:
问题1: mysql软件底层码表使用的不是utf-8导致执行sql语句中文乱码,最终导致无法查询的数据.
解决: 需要设置客户端和服务器端的编码为utf-8.
1 、修改mysql的配置文件, 在mysqld条目下增加以下配置,指定服务器的字符集为utf-8
# 打开配置文件
vim /etc/my.cnf
# 修改内容
[mysqld]
character-set-server=utf8
2 、增加client客户端的默认字符集的配置,指定为utf-8,将下面的配置放到文件的结尾处.
# 将下列放到配置文件最后面
[client]
default-character-set=utf8
3 、文件保存退出后,重启mysql服务
systemctl restart mysqld