一、基础环境准备
1.1、安装VM
1.2、在VM上导入linux iso镜像,装好linux系统
华为centos镜像下载地址
https://mirrors.huaweicloud.com/centos/
https://mirrors.huaweicloud.com/centos/7.9.2009/isos/x86_64/
网易centos镜像下载地址
http://mirrors.163.com/centos/7.9.2009/isos/x86_64/查看linux版本命令
1、cat /etc/redhat-release :CentOS Linux release 7.9.2009 (Core)
2、cat /etc/centos-release :CentOS Linux release 7.9.2009 (Core)查看linux内核命令
uname -r : 3.10.0-1160.62.1.el7.x86_64
1.3、配置网络
# vi /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="none" #开启静态IP,也可用 static
IPADDR="192.168.136.161"
NETMASK="255.255.255.0" # 子网掩码
GATEWAY="192.168.136.2" # 网关地址
DNS1="114.114.114.114" # DNS服务器
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="63d66e06-e7d7-45ff-ab0b-8e6dcaf912b9"
DEVICE="ens33"
ONBOOT="yes"
PREFIX="24"
IPV6_PRIVACY="NO"
1.4、安装linux插件
1、yum -y install net-tools --安装网络插件(ifconfig)
2、yum -y install vim --安装vim插件
3、yum -y install lrzsz --安装传输插件
4、yum -y install git --安装git
5、yum -y install tree --安装属性展示插件
6、yum -y install wget --安装下载插件
7、yum -y install unzip zip --安装zip压缩插件
zip -r myfile.zip ./* :将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩
unzip -o -d /home/sunny myfile.zip : 把myfile.zip文件解压到 /home/sunny/目录下
-o:不提示的情况下覆盖文件;
-d:指明将文件解压缩到/home/sunny目录下
zip -d myfile.zip smart.txt:删除压缩文件中smart.txt文件
zip -m myfile.zip ./rpm_info.txt :向压缩文件中myfile.zip中添加rpm_info.txt文件
8、yum -y update --更新yum源
9、yum -y install lsof --安装lsof插件(查看端口占用)
1.5、yum源修复
方式一:
1、 CentOS7利用yum进行软件安装,报错:
There are no enabled repos. Run "yum repolist all" to see the repos you have
2、下载对应版本repo文件,如:CentOS7-Base-163.repo, 放入/etc/yum.repos.d/里
3、下载地址:http://mirrors.163.com/.help/centos.html
4、完成后,查看/etc/yum.repos.d文件夹下是否有了CentOS-Base.repo文件。
5、执行命令,生成缓存:
yum clean all
yum makecache
方式二:
1、先备份本地默认的yum源
cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo_bak
2、获取新的yum源,一般使用阿里或者网易的
1)、阿里
cd /etc/yum.repos.d/
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
2)、网易
cd /etc/yum.repos.d/
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
3、执行命令,生成缓存:
yum clean all
yum makecache
1.6、设置防火墙
关于防火墙: 要想在windows上能够访问,还需要开放防火墙的对应的端口,如mysql的3306端口
1)、查看防火墙状态
1、service firewalld status
2、systemctl status firewalld
3、firewall-cmd --state
2)、开放单个端口:
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
3)、关闭单个端口:
firewall-cmd --zone=public --remove-port=8080/tcp --permanent
firewall-cmd --reload
4)、查看开放端口:
firewall-cmd --zone=public --list-ports
5)、完全关闭防火墙
systemctl stop firewalld #关闭防火墙
systemctl disable firewalld #禁用防火墙(禁止随系统自动启动)
6)、开启防火墙
systemctl start firewalld #开启防火墙
systemctl enable firewalld #启用防火墙(随系统自动启动)
1.7、常用命令
1、文件和目录命令
1)、退回上一级目录 cd .. |进入根目录 cd / |进入当前用户主目录cd ~
1、查看端口占用
linux: netstat -tunlp | grep 端口号
lsof -i:端口号 (需要root权限执行)【安装lsof:yum -y install lsof.*】
windows: netstat -ano | findstr 端口号
2、杀进程
linux: kill -9 进程ID
windows: tastkill /PID 进程ID /F
3、服务管理
service 【服务名称】 【start|restart|stop|status】
例子: service docker start
systemctl 【command】 【unit】 (command为命令,unit为服务名)
例子: systemctl enable docker
command命令还有如下:
start:立刻启动后面接的 unit。
stop:立刻关闭后面接的 unit。
restart:立刻关闭后启动后面接的 unit,亦即执行 stop 再 start 的意思。
reload:不关闭 unit 的情况下,重新载入配置文件,让设置生效。
enable:设置下次开机时,后面接的 unit 会被启动。
disable:设置下次开机时,后面接的 unit 不会被启动。
status:目前后面接的这个 unit 的状态,会列出有没有正在执行、开机时是否启动等信息。
is-active:目前有没有正在运行中。
is-enable:开机时有没有默认要启用这个 unit。
kill :不要被 kill 这个名字吓着了,它其实是向运行 unit 的进程发送信号。
show:列出 unit 的配置。
mask:注销 unit,注销后你就无法启动这个 unit 了。
unmask:取消对 unit 的注销。
4、wget :
wget命令用来从指定的URL下载文件。wget非常稳定,它在带宽很窄的情况下和不稳定网络中有很强的适应性,如果
是由于网络的原因下载失败,wget会不断的尝试,直到整个文件下载完毕。如果是服务器打断下载过程,它会再次联
到服务器上从停止的地方继续下载。
5、sed:
替换文本中的关键字
sed -i -e ‘s#需要被替换的关键字#目标关键字#g’ 文件名
6、查看进程
查看java进程:ps -ef|grep java
查看java进程名占用进程的进程id:pgrep java
查看指定进程id的运行目录:pwdx 54096
1.8、vim常用命令
1、进入vim:vim 文件名
2、进入编辑模式: 按 【i】
3、退出编辑模式: 按 【ESC】
4、保存退出vim: 输入 【:wq】
5、强制退出vim: 输入 【q!】
6、定位到第一行: 按 【gg 或 1G】
7、定位到最后一行: 按 【G】
8、定位到指定行: 输入 【指定行号G】
9、定位到行首: 按【0】
10、定位到行尾 按 【shift + 4】
11、撤销:按【u】
二、安装JDK
JDK下载地址:Java Downloads | Oracle
1、自己新建一个目录,用于存放和安装JDK:mkdir -p /root/install/jdk
2、使用linux自带sftp工具(alt+p)
从本机上传至linux命令 : put 文件夹路径
从linux上获取文件命令 : get 文件夹路径
或者使用lrzsz工具(yum -y install lrzsz)
从本机上传至linux命令 : rz (图形化界面,将文件上传至当前目录)
从linux上获取文件命令 : sz 文件夹路径
将JDK1.8的安装包上传至自己新建的目录
3、解压缩包: tar -zxvf jdk-8u171-linux-x64.tar.gz
4、编辑系统profile文件
vim /etc/profile
添加如下配置:
#set java environment
JAVA_HOME=/root/install/jdk/jdk1.8.0_171
JRE_HOME=/root/install/jdk/jdk1.8.0_171/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH
5、刷新配置文件
source /etc/profile
6、验证
java -version
二、安装Tomcat
2.1、linux安装
1、将Tomcat的安装包上传至linux:/root/install/tomcat
2、进入tomcat目录进行解压:tar -zxvf apache-tomcat-7.0.57.tar.gz
3、启动tomcat:
cd /root/install/tomcat/apache-tomcat-7.0.57/bin
sh startup.sh或者./startup.sh
4、查看是否启动
1)、通过查看日志的形式:
tail -500f /root/install/tomcat/apache-tomcat-7.0.57/logs/catalina.out
2)、通过查看进程的方式:ps -ef|grep tomcat
5、可在tomcat的webapp中放入项目,如新建test文件夹,在其中放入index.html文件
6、访问:http://192.168.200.161:8080/mytest/index.html
2.2、docker安装
#1、搜索tomcat镜像
docker search tomcat#2、拉取tomcat镜像
docker pull tomcat:9.0#3、在/root目录下创建tomcat目录用于存储tomcat数据信息
mkdir ~/tomcat
cd ~/tomcat#4、进入tomcat目录 创建容器,设置端口映射、目录映射、自动启动
docker run -id \
-p 8081:8080 \
--name=tomcat9 \
--restart=always \
-v $PWD:/usr/local/tomcat/webapps \
tomcat:9.0#5、在tomcat目录下创建mytest目录,并新建index.html,写入文字
#6、访问 http://192.168.200.161:8081/mytest/index.html 进行测试
三、安装Mysql
3.1、linux安装
Mysql下载地址:https://downloads.mysql.com/archives/community/
https://dev.mysql.com/downloads/installer/
https://downloads.mysql.com/archives/installer/
1、卸载。下载完成之后,先不要急着安装。由于某些原因,在安装 MySQL 之前,可能电脑中已经有了安装过 MySQL 的痕迹,这可能会给下面 MySQL 的安装带来各种问题(如密码不能初始化、MySQL 执行失败等),因此首先需要先彻底清除电脑中与 MySQL 有关的任何文件。
rpm -qa 查询当前系统中安装的所有软件
rpm -qa | grep mariadb 查询当前系统中安装的名称带mariadb的软件
通过查询,发现在当前系统中存在mariadb数据库,是CentOS7中自带的,而这个数据库和MySQL数据库是冲突的, 所以要想保证MySQL成功安装,需要卸载mariadb数据库。
rpm中,卸载软件的语法为:rpm -e --nodeps 软件名称
卸载mariadb:
rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
稳妥起见,用命令再次检测
1)、检查电脑里是否已经安装了 MySQL。输入以下命令来查看电脑中与 MySQL 有关的安装信息。
sudo yum list installed mysql*
2)、如果命令的输出什么也没有,那就无需卸载。如果有,则要输入以下命令来卸载:
sudo yum erase mysql*
3)、卸载通常不是万能的,还需要手动删除与 MySQL 有关的文件。输入以下命令来查找这种文件
sudo find / -name 'mysql*'
4)、输入以下命令来删除目录 /var/、/usr/、/etc/ 下的这些文件
sudo find /var /usr /etc -name "mysql*" -exec rm -r {} \;
5)、删除完成之后,再使用上面的查找命令,看看还能不能找到这些文件。
2、上传:将下载好的mysql rpm包上传至linux目录:/root/install/mysql3、解压:tar -zxvf mysql-5.7.25-1.el7.x86_64.rpm-bundle.tar.gz
4、安装:核心的安装包是 mysql-community-server。在普通情况下,使用命令 sudo yum localinstall mysql-community-server-8.0.26-1.el8.x86_64.rpm 即可。但在此处却不能这样做,因为 MySQL 的各个组成安装包之间有复杂的依赖关系,而 mysql-community-server 并不是依赖的起点,所以需要按依赖关系依次安装
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
但是,注意: 以下命令可以自动解析本目录下各安装包的依赖关系,并自动按顺序安装:
sudo yum -y localinstall *.rpm
5、验证
mysql --version
6、运行状态控制:MySQL安装完成之后,会自动注册为系统的服务,服务名为mysqld。那么,我们就可以通过systemctl指令来查看mysql的状态、启动mysql、停止mysql
systemctl status mysqld 查看mysql服务状态
systemctl start mysqld 启动mysql服务
systemctl stop mysqld 停止mysql服务
systemctl enable mysqld 开机自启
当然,还可以通过如下两种方式,来判定mysql是否启动:
netstat -tunlp 查看已经启动的服务
netstat -tunlp | grep mysql 查看mysql的服务信息
ps –ef | grep mysql 查看mysql进程
7、查看临时密码:rpm安装的mysql,在mysql第一次启动时,会自动帮我们生成root用户的访问密码,并且输出在mysql的日志文件 /var/log/mysqld.log,注意,该密码如果忘记,只能重新安装mysql
cat /var/log/mysqld.log | grep password8、登录
mysql -uroot -p'ZBrVGHWNk0(A'9、修改密码
查看密码强度设定:SHOW VARIABLES LIKE 'validate_password%';
修改密码强度:
set global validate_password_length=4; #密码长度最低位数,默认是8
set global validate_password_policy=LOW; #密码安全等级低,默认是MEDIUM,便于密码可以修改成root
set password = password('root'); #设置localhost user密码为root
也可用如下命令修改:
#设置指定user的密码为root
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码'
#刷新权限
flush privileges;
10、开启远程访问权限
#也可用来修改指定用户密码
grant all on *.* to 'root'@'%' identified by 'root'; #注意:远程只能通过% Host访问
#或
update user set user.Host='%' where user.User='root';
#然后刷新权限
flush privileges;
11、连接验证
1)、 通过windwos cmd连接:
mysql -h 192.168.200.161 -P 3306 -uroot -proot
2)、通过客户端连接工具连接
通过某些客户端连接时,可能会报如下错:plugin caching sha2 password could not be loaded
原因是:客户端采用的密码认证方式落后了,现在8.0的mysql采用的sha2加密方式并没有更新到R包中,
因此需要更改mysql的指定用户的加密方式,拿wifi举例,等于现在用户设备不支持wap2加密,只能
用上一代的wap加密方式。
解决:修改mysql的加密方式
#修改加密规则
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
ALTER USER 'root'@'%' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
#更新用户的密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
#刷新权限
FLUSH PRIVILEGES;
#重置密码
#ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';
12、设置开机自启
systemctl enable mysqld
13、修改msyql root密码
方法1: 用SET PASSWORD命令
首先登录MySQL,用如下命令查看数据库root用户密码情况:
SELECT `HOST`,`User`,`authentication_string` FROM mysql.user WHERE `User` = 'root'
#1、设置 localhost Host密码为root123 (localhost Host控制本机器连接)
#2、设置 % Host密码为root123 (% Host控制远程连接)
格式:mysql> set password for 用户名@Host = password('新密码');
例子:mysql> set password for root@localhost = password('root123');
mysql> set password for root@'%' = password('root123');
flush privileges;方法2:用mysqladmin 修改Host为localhost的用户密码
格式:mysqladmin -u用户名 -p旧密码 password 新密码
例子:mysqladmin -uroot -proot password root123 #设置localhost Host密码为root123
flush privileges;14、如果忘记mysql root密码
1)、停掉mysql服务 service mysqld stop
2)、修改/etc/my.cnf 文件,在mysqld下面 增加 skip-grant-tables ,作用是登陆是跳开密码校验
3)、启动mysql服务 service mysqld start
4)、登陆 mysql -u root
5)、修改密码(将密码修改为 root123 ) 依次执行以下操作
use mysql
#一并修改Host为%和Host为localhost的两个root用户密码为root123
update mysql.user set authentication_string=password('root123') where user='root'
flush privileges;
6)、/etc/my.cnf 文件删掉 skip-grant-tables
6)、重启mysql服务
service mysqld restart
3.2、docker 安装
#1、搜索mysql镜像
docker search mysql#2、拉取mysql镜像
docker pull mysql:8.0#3、在/root目录下创建mysql目录用于存储mysql数据信息
mkdir ~/install/docker/mysql
cd ~/install/docker/mysql#4、进入mysql目录 创建容器,设置端口映射、目录映射、自动启动
docker run -id \
-p 3307:3306 \
--name=mysql8 \
--restart=always \
-v $PWD/conf:/etc/mysql/conf.d \
-v $PWD/logs:/logs \
-v $PWD/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=root \
mysql:8.0 \
--character-set-server=utf8mb4 \
--collation-server=utf8mb4_unicode_ci#5、进入容器,操作mysql
docker exec –it mysql /bin/bash#6、可使用mysql客户端连接mysql进行测试
linux 软件安装(中)-CSDN博客
linux 软件安装(下)-CSDN博客