07Linux--环境安装

😹 作者: gh-xiaohe
😻 gh-xiaohe的博客
😽 觉得博主文章写的不错的话,希望大家三连(✌关注,✌点赞,✌评论),多多支持一下!!!

🚏 环境安装

安装软件一般有三种方式:

  • rpm(JDK:在线发布一SringBoot项目)
  • 解压缩(tomcat,启动并通过外网访问,发布网站)
  • yum在线安装(docker:直接安装运行跑起来docker就可以!)

🚀 一、 jdk安装(rpm安装) rpm -ivh

🚬 1、检测是否有JDK

[root@gh~]# java -version
java version "1.8.0_121"
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)
# 检查
[root@gh~]# rpm -qa|grep jdk
jdk1.8.0_121-1.8.0_121-fcs.x86_64
# 卸载 -e --nodeps 强制删除
[root@gh~]# rpm -e --nodeps jdk1.8.0_121-1.8.0_121-fcs.x86_64
[root@gh~]# java -version
-bash: /usr/bin/java: No such file or directory  # OK

在这里插入图片描述

🚬 2、安装JDK

# 安装java rpm
[root@gh gh]# rpm -ivh jdk-8u321-linux-aarch64.rpm 

在这里插入图片描述

🚬 3、配置环境变量

vim /etc/profile

vim /etc/profile
 
# 安装完成后配置环境变量 文件:/etc/profile   不是这个目录要进行相对应的更改
JAVA_HOME=/usr/java/jdk1.8.0_321-amd64
CLASSPATH=%JAVA_HOME%/lib:%JAVA_HOME%/jre/lib
PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
export PATH CLASSPATH JAVA_HOME
# 保存退出

在这里插入图片描述
在这里插入图片描述

🚬 4、配置生效

source /etc/profile

 # 让新增的环境变量生效!
source /etc/profile
 
# 测试
[root@gh gh]# java -version
java version "1.8.0_321"
Java(TM) SE Runtime Environment (build 1.8.0_321-b07)
Java HotSpot(TM) 64-Bit Server VM (build 25.321-b07, mixed mode)

🚬 5、运行java程序

  • 前台运行:java text.jar
  • 后台运行:nohup java -jar text.jar &> text.log &
  • 解释:后台运行java-jar命令,并将日志输出到text日志文件

🚄 二、 Tomcat安装(解压缩安装) tar -zxvf

Tomcat下载链接

🚬 1、解压

[root@gh gh]# tar -zxvf apache-tomcat-10.0.16.tar.gz —C /usr/local

🚬 2、启动和关闭Tomcat

进入到Tomcat目录下的bin目录中

[root@gh gh]# cd apache-tomcat-10.0.16.tar.gz # 进入到Tomcat目录
[root@gh gh]# cd bin/ # 进入到bin目录下
[root@gh gh]# ./startup.sh  # 启动Tomcat
[root@gh gh]# ./shutdown.sh # 关闭Tomcat

在这里插入图片描述

🚬 3、查看Tomcat是启动成功

# 查看启动日志
[root@localhost local]# more /usr/local/apache-tomcat-10.0.16/logs.catalina.out
[root@localhost local]# tail -50 /usr/local/apache-tomcat-10.0.16/logs.catalina.out

# 查看进程 (或)
[root@localhost local]# ps -ef |grep tomcat 

🚒 三、安装Docker (yum安装)

  • 基于 CentOS 7 安装

  • yum -y install 包名 # yum install 安装命令

  • yum list | grep xxx 软件列表

  • 官网安装参考手册

🚬 1、检查CentOS7的版本 7以上

[root@gh bin]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core) 

🚬 2、安装环境准备

yum -y install gcc
yum -y install gcc-c++
 
或者
yum -y install gcc  gcc-c++

在这里插入图片描述

🚬 3、卸载旧版本

yum -y remove docker docker-common docker-selinux docker-engine
# 官网版本
yum remove docker \
            docker-client \
            docker-client-latest \
            docker-common \
            docker-latest \
            docker-latest-logrotate \
            docker-logrotate \
            docker-engine

在这里插入图片描述

🚬 4、docker安装

1、卸载旧版本,官方文档查找 https://docs.docker.com/
sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
# 2、设置存储库
# 安装yum-utils包(提供yum-config-manager 实用程序)并设置稳定存储库。
sudo yum install -y yum-utils
 
3#设置镜像的仓库,使用国内阿里云镜像
sudo yum-config-manager \
	--add-repo \
	http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#更新yum软件包索引
yum makecache fast
 
4#安装docker相关源 docker-ce 社区 ee 企业版
sudo yum install docker-ce docker-ce-cli containerd.io
 
5#启动docker
systemctl start docker
 
6#查看docker版本
docker version
 
7#运行hello-world
docker run hello-world
 
docker images

🚤 四、安装数据库

🚬 1、傻瓜式(宝塔面板)

🚭 1、安装宝塔

Linux面板安装教程

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh

下载完毕之后,就可以得到一个地址:宝塔的管理面板

  • url
  • username
  • password

启动宝塔:bt default
重启宝塔:/etc/init.d/bt restart
停止宝塔:/etc/init.d/bt stop
卸载宝塔:/etc/init.d/bt stop && chkconfig --del bt && rm -f /etc/init.d/bt && rm -rf /www/server/panel

🚭 2、宝塔下创建数据库

在这里插入图片描述
在这里插入图片描述

🚭 3、本地登录数据库

在这里插入图片描述
在这里插入图片描述

🚭 4、命令行登录数据库

在这里插入图片描述

🚬 2、rpm安装

  • 1、检测当前系统中是否安装MySQL数据库

    • rpm -aq 查询当前系统中安装的所有软件
    • rpm -aq|grep mysql 查询当前系统中安装的名称带的mysql软件
    • rpm -aq|grep mariadb 查询当前系统中安装的名称带的mariadb软件
  • 注意事项

    • 如果当前系统中已经安装有MySQL数据库,安装将失败。CentOS7自带mariadb,与MySQL数据库冲突
  • 2、卸载已经安装的软件

    • rpm -e --nodeps 软件名称
    • rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
  • 3、将资料中提供好的MySqL安装包上传并解压

    • mkdir /usr/local/mysql
    • tar -zxvf mysql-5.7.25-1.el7.x86_64.rpm-bundle.tar.gz -C /usr/local/mysql
      • mysql-community-client-5.7.25-1.el7.x86_64.rpm
      • mysql-community-common-5.7.25-1.el7.x86_64.rpm
      • mysql-community-devel-5.7.25-1.el7.x86_64.rpm
      • mysql-community-libs-5.7.25-1.el7.x86_64.rpm
      • mysql-community-libs-compat-5.7.25-1.el7.x86_64.rpm
      • mysql-community-server-5.7.25-1.el7.x86_64.rpm
      • 解压后得到6个rpm的安装包
  • 4、按照顺序安装rpm软件包有依赖关系

    • cd /usr/local/mysql/

    • rpm -ivh mysql-community-common-5.7.25-1.el7.x86_64.rpm

    • rpm -ivh mysql-community-libs-5.7.25-1.el7.x86_64.rpm

    • rpm -ivh mysql-community-devel-5.7.25-1.el7.x86_64.rpm

    • rpm -ivh mysql-community-libs-compat-5.7.25-1.el7.x86_64.rpm

    • rpm -ivh mysql-community-client-5.7.25-1.el7.x86_64.rpm

    • yum install net-tools

    • rpm -ivh mysql-community-server-5.7.25-1.el7.x86_64.rpm

    • 说明1: 安装过程中提示缺少net-tools依赖,使用yum安装

    • 说明2: 可以通过指令升级现有软件及系统内核 yum update

  • 5、启动mysql

  • systemctl status mysqld 查看mysql服务状态

  • systemctl start mysqld 启动mysql服务

  • 说明:可以设置开启时启动mysql服务,避免每次开机启动mysql

    • systemctl enable mysqld 开机启动mysql服务

    • netstat -tunlp 查看已经启动的服务

    • netstat -tunlp | grep mysql 查看MySQL的服务

    • ps -ef |grep mysql 查看mysql进程

  • 6、登录MySQL数据库,查阅临时密码

    • cat /var/log/mysqld.log 查看文件内容

    • cat /var/log/mysqld.log |grep password 查看文件内容中包含password的行信息

  • 注意事项:冒号后面的是密码,注意空格

  • 7、登录MySQL,修改密码,开放访问权限登录

  • mysql -uroot -p 登录mysql(使用临时密码登录)

  • 修改密码

    • set global validate_password_length=4; 设置密码长度最低位数

    • set global validate_password_policy=LOW; 设置密码安全等级低,便于密码可以修改成root

    • set password = password(‘root’); 设置密码为root

修改密码(8.0的特殊密码加密方式导致登录不上):ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘new_password’;

  • 修改允许远程登陆(开启外部访问权限) 重要

    • use mysql;

    • select Host,User from user;

    • update user set host = ‘%’ where user =‘root’;

    • flush privileges;

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

mysql> use mysql;
Database changed

# root 用户主机使用的是localhost  只允许root用户登录本机
mysql> select Host,User from user;
+-----------+------------------+
| Host      | User             |
+-----------+------------------+
| localhost | mysql.infoschema |
| localhost | mysql.session    |
| localhost | mysql.sys        |
| localhost | root             |
+-----------+------------------+
4 rows in set (0.00 sec)

# 允许root用户在客户端 192.168.28开头的ip地址下可以去链接
mysql> update user set host = '192.168.28.%' where user ='root';
Query OK, 1 row affected (0.02 sec)
Rows matched: 1  Changed: 1  Warnings: 0

# 查询修改成功
mysql> select Host,User from user;
+--------------+------------------+
| Host         | User             |
+--------------+------------------+
| 192.168.28.% | root             |
| localhost    | mysql.infoschema |
| localhost    | mysql.session    |
| localhost    | mysql.sys        |
+--------------+------------------+
4 rows in set (0.00 sec)

# 刷新权限
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
  • 8、测试MySQL数据库是否成功工作

    • show databases;
# 1、检测当前系统中是否安装MySQL数据库
[root@localhost 瑞吉]# rpm -aq|grep mysql
[root@localhost 瑞吉]# 
[root@localhost 瑞吉]# rpm -aq|grep mariadb # 与MySQL冲突需要卸载
mariadb-libs-5.5.68-1.el7.x86_64
# 2、卸载已经安装的软件
[root@localhost 瑞吉]# rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64 # 卸载
[root@localhost 瑞吉]# 
# 3、将资料中提供好的MySqL安装包上传并解压
[root@localhost 瑞吉]# mkdir /usr/local/msyql
[root@localhost 瑞吉]# tar -zxvf mysql-5.7.25-1.el7.x86_64.rpm-bundle.tar.gz -C /usr/local/mysql
mysql-community-client-5.7.25-1.el7.x86_64.rpm
mysql-community-common-5.7.25-1.el7.x86_64.rpm
mysql-community-devel-5.7.25-1.el7.x86_64.rpm
mysql-community-libs-5.7.25-1.el7.x86_64.rpm
mysql-community-libs-compat-5.7.25-1.el7.x86_64.rpm
mysql-community-server-5.7.25-1.el7.x86_64.rpm
# 解压后得到6个rpm的安装包
 
# 4、按照顺序安装rpm软件包有依赖关系
[root@localhost 瑞吉]# cd /usr/local/mysql/
[root@localhost mysql]# rpm -ivh mysql-community-common-5.7.25-1.el7.x86_64.rpm
[root@localhost mysql]# rpm -ivh mysql-community-libs-5.7.25-1.el7.x86_64.rpm
[root@localhost mysql]# rpm -ivh mysql-community-devel-5.7.25-1.el7.x86_64.rpm
[root@localhost mysql]# rpm -ivh mysql-community-libs-compat-5.7.25-1.el7.x86_64.rpm
[root@localhost mysql]# rpm -ivh mysql-community-client-5.7.25-1.el7.x86_64.rpm
[root@localhost mysql]# yum install net-tools
[root@localhost mysql]# rpm -ivh mysql-community-server-5.7.25-1.el7.x86_64.rpm
 
# 5、启动MySQL
[root@localhost mysql]# systemctl status mysqld     # 查看mysql服务状态
[root@localhost mysql]# systemctl start mysqld      # 启动Mysql服务  
[root@localhost mysql]# systemctl status mysqld     # 查看mysql服务状态
[root@localhost mysql]# systemctl enable mysqld     # 开机启动mysql服务
[root@localhost mysql]# netstat -tunlp|grep mysql   # 查看MySQL的服务
[root@localhost mysql]# ps -ef |grep mysql          # 查看mysql进程
 
# 6、查阅MySQL临时密码
[root@localhost mysql]# cat /var/log/mysqld.log  # 查看文件内容 
[root@localhost mysql]# cat /var/log/mysqld.log|grep password # 查看文件内容中包含password的行信息
2022-09-01T13:57:37.196009Z 1 [Note] A temporary password is generated for root@localhost: IkYkhR(w-73>
 
# 7、登录MySQL,修改密码,开放访问权限登录
[root@localhost mysql]# mysql -uroot -p
 
mysql> set global validate_password_length=4; # 设置密码长度最低位数
mysql> set global validate_password_policy=LOW; # 设置密码安全等级低,便于密码可以修改成root
mysql> set password = password('root'); # 设置密码为root
mysql> grant all on *.* to 'root'@'%'identified by 'root'; #从外部也可以访问到内部的mysql
mysql> flush privileges; # 刷新权限立即生效
mysql> exit # 退出
Bye
 
[root@localhost mysql]# mysql -uroot -p # 重新登录测试
 
# 8、测试MySQL数据库是否成功工作*
[root@localhost mysql]# mysql -uroot -p 
mysql> show databases;
  • 9、MySQL服务自启动
# 查看服务是不是自启动
systemctl list-unit-files|grep mysqld.service
# enabled 自启动 disable 非自启动

# 自启动mysql
systemctl enable mysqld.service

# 关闭自启动
systemctl disable mysqld.service

🚗 五、Linux卸载MySQL

🚬 1、关闭mysql服务

🚬 2、删除MySQL文件

🚬 3、删除MySQL依赖

🚬 4、删除MySQL对应的文件夹

[root@localhost gh]# systemctl stop mysqld # 关闭mysql服务
[root@localhost gh]# systemctl status mysqld # 查看mysql服务状态

# 
[root@localhost gh]# rpm -qa | grep -i mysql
mysql-community-client-5.7.25-1.el7.x86_64
mysql-community-libs-5.7.25-1.el7.x86_64
mysql-community-server-5.7.25-1.el7.x86_64
mysql-community-devel-5.7.25-1.el7.x86_64
mysql-community-libs-compat-5.7.25-1.el7.x86_64
mysql-community-common-5.7.25-1.el7.x86_64

# 卸载mysql
[root@localhost gh]# yum remove mysql-community-client-5.7.25-1.el7.x86_64
[root@localhost gh]# yum remove mysql-community-libs-5.7.25-1.el7.x86_64
[root@localhost gh]# yum remove mysql-community-server-5.7.25-1.el7.x86_64
[root@localhost gh]# yum remove mysql-community-devel-5.7.25-1.el7.x86_64
[root@localhost gh]# yum remove mysql-community-libs-compat-5.7.25-1.el7.x86_64
[root@localhost gh]# yum remove mysql-community-common-5.7.25-1.el7.x86_64

# 卸载依赖
[root@localhost gh]# yum remove mysql-libs
[root@localhost gh]# yum remove mysql-server
[root@localhost gh]# yum remove perl-DBD-MySQL
[root@localhost gh]# yum remove mysql

# 查看mysql对应的文件夹
[root@localhost gh]# find / -name mysql  
find: ‘/run/user/1000/gvfs’: Permission denied
/etc/logrotate.d/mysql
/etc/selinux/targeted/active/modules/100/mysql
/etc/selinux/targeted/tmp/modules/100/mysql
/var/lib/mysql
/var/lib/mysql/mysql
/usr/bin/mysql
/usr/lib64/mysql
/usr/share/mysql
/usr/include/mysql
/usr/include/mysql/mysql
/usr/local/mysql

# 删除查找出来的文件
[root@localhost gh]# rm -rf /etc/logrotate.d/mysql
[root@localhost gh]# rm -rf /etc/selinux/targeted/active/modules/100/mysql
[root@localhost gh]# rm -rf /etc/selinux/targeted/tmp/modules/100/mysql
[root@localhost gh]# rm -rf /var/lib/mysql

🚬 5、删除 my.cnf

rm -rf /etc/my.cnf
🚭 mysql5.7中的字符集

 &ensp&ensp&ensp使用的是中文去添加,默认的表,乃至于是数据库,他的字符集不是能添加中文,是latin1(拉丁),latin1(拉丁)不包含中文

查看数据库的字符集

show variables like 'character%';
# 或者
show variables like '%char%';

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-C90KfgYo-1669561253207)(第01章 Linux下MySQL的安装与使用.assets/image-20221127224613628.png)]

  • character_set_server:(重点) 服务器级别的字符集
  • character_set_database:(重点) 当前数据库的字符集
  • character_set_client: 服务器解码请求时使用的字符集
  • character_set_connection: 服务器处理请求时会把请求字符串从character_set_client转为character_set_connection
  • character_set_results: 服务器向客户端返回数据时使用的字符集

数据库的服务级别 下层依赖上层

  • 服务级别
  • 数据库级别
  • 表级别
  • 列级别

修改数据中的字符集

  • window 中修改的是 my.ini 文件
  • Linux中修改的是 my.cnf 文件 vim /etc/my.cnf 目录下

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-r3S7FHLf-1669561253208)(第01章 Linux下MySQL的安装与使用.assets/image-20221127221532115.png)]

注意:

  • 1、修改成功后影响的是日后新创建的数据库和表的字符集,对以前创建的字符集不进行修改
  • 2、如果表中有数据,要保证数据是可改的,utf8 兼容 latin1(拉丁),latin1(拉丁)反向不兼容utf8
  • 服务级别
  • 修改数据库的字符集 alter database 库名 character set ‘utf8’;
  • 修改表的字符集 alter table 表名 convert to character set ‘utf8’;

问题:

  • 已经创建好了latin1(拉丁)字符集的数据库,但是此时没有创建表,恰巧此时修改了字符集为utf8,问此时在创建表的字符集是?
  • 原因: utf8 在创建表时使用的字符集是和数据库一致的。

🚲 六、开启防火墙端口

  • 查看防火墙(firewall)状态: systemctl status firewalld

  • 开启防火墙: service firewalld start

  • 重启防火墙: service firewalld restart

  • 关闭防火墙: service firewalld stop

  • 设置开机禁用防火墙 : systemctl disable firewalld.service

  • #设置开机启用防火墙 : systemctl enable firewalld.service

  • 查看防火墙规则

    • 查看全部信息: firewall-cmd --list-all
    • 查看端口信息: firewall-cmd --list-ports
  • 开启端口

    • 开启80号端口: firewall-cmd --zone=public --add-port=80/tcp --permanent
    • 开始80-90号端口: firewall-cmd --zone=public --add-port=80-90/tcp --permanent
    • 开启端口后要重启防火墙服务: systemctl restart firewalld.service
  • 命令含义:

    • –zone #作用域
    • –add-port=80/tcp #添加端口,格式为:端口/通讯协议
    • –permanent #永久生效,没有此参数重启后失效
  • 解除防火墙的锁定 systemctl unmask firewalld

  • 锁定防火墙 systemctl mask firewalld

# 查看firewall服务状态
systemctl status firewalld
 
# 开启、重启、关闭、firewalld.service服务
# 开启防火墙
service firewalld start
# 重启防火墙
service firewalld restart
# 关闭防火墙
service firewalld stop
 
# 查看防火墙规则
firewall-cmd --list-all    # 查看全部信息
firewall-cmd --list-ports  # 只看端口信息
 
# 开启端口
开端口命令:firewall-cmd --zone=public --add-port=80/tcp --permanent
开端口命令:firewall-cmd --zone=public --add-port=80-90/tcp --permanent
重启防火墙:systemctl restart firewalld.service
 
命令含义:
--zone #作用域
--add-port=80/tcp  #添加端口,格式为:端口/通讯协议
--permanent   #永久生效,没有此参数重启后失效
  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

gh-xiaohe

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值