linux常用安装(二)

目录

软件安装命令

一、JDK安装

1、 在/下创建soft目录,将JDK复制到Linux的soft目录下

2 、进入/soft目录,解压jdk到指定目录/usr/local下

3、 进入目录/usr/local下,查看是否有名为jdk1.8.0_221的目录

4、配置jdk环境变量,打开/etc/profile配置文件,添加下列内容.(export命令用于将shell变量输出为环境变量)

5 、重新加载/etc/profile配置文件

6、 判断JDK是否安装成功

二、Mysql安装

MySQL安装与卸载

1 、卸载

yum卸载

rpm方式

2、安装

yun安装

rpm安装

3 、使用

4、mysql开启远程访问权限

三、redis安装

1、安装过程:

2、启动

3、启动客户端

4、停止redis

5 、远程访问Redis

4、Tomcat安装

5、nginx 安装

1、安装部分

2、在nginx上部署静态网站

3 、nginx反向代理

4 、正向代理 服务器

6、发布项目到Linux


参考资料: 
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、安装过程:

  1. 安装编译环境并且编译(已经安装好:gcc-c++)
  2. 解压redis的c语言源代码,使用gcc-c++进行编译和安装
  3. 启动运行,并且设置成后台运行
  4. 如果要在客户端去访问,必须打开防火墙6379端口号
  5. 设置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端口

image-20210510065610004

 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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

彦登的登

动力来源

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值