一、安装Mysql
https://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/ 官方文档
没安装Xshell 和 Xftp的小伙伴可以看这里
Xshell 和 Xftp::https://pan.baidu.com/s/1tgocuEIWr9hMM_70GOt2NA?pwd=1234
1.1 设置阿里云镜像源
https://developer.aliyun.com/mirror/centos?spm=a2c6h.13651102.0.0.3e221b11REy9PF
#1. 备份
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
#2. 下载新的 CentOS-Base.repo 到 /etc/yum.repos.d/
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
#3. 运行 yum makecache 生成缓存
yum makecache
#4. 安装wget(如果有了就不需要安装了)
yum -y install wget
1.2 安装Mysql
#下载发布包
wget https://dev.mysql.com/get/mysql80-community-release-el7-6.noarch.rpm
#安装发布包
rpm -ivh mysql80-community-release-el7-6.noarch.rpm
#查看 MySQL Yum 存储库中的所有子存储库,并查看其中哪些子存储库已启用或禁用
yum repolist all | grep mysql
选择默认安装的版本,默认的是8.0 版本,这里需要禁用掉启动5.7,也可以进行修改,不过无所谓,用8.0就可以
#安装mysql
yum -y install mysql-community-server
# 可能会报错,就是一个缺少密钥。百度一下,加载那个密钥之后重新运行安装mysql
如果下载速度很慢,可以更换镜像:
参考地址:https://www.cnblogs.com/downmoon/p/11896158.html
1.3 启动Mysql
#启动 MySQL 服务器
systemctl start mysqld
#检查 MySQL 服务器的状态
systemctl status mysqld
MySQL 服务器初始化(从 MySQL 5.7 开始):在服务器初始启动时,假设服务器的数据目录为空,会发生以下情况:
- 服务器已初始化。
- 在数据目录中生成 SSL 证书和密钥文件。
- validate_password 插件 已安装并启用。
- 创建了一个超级用户帐户’root’@‘localhost’ 。超级用户的密码已设置并存储在错误日志文件中。要显示它,请使用以下命令:sudo
temporary password
/var/log/mysqld.log
执行此命令
sudo grep ‘temporary password’ /var/log/mysqld.log
获取到一个默认的密码如下图:后面的hiqt+XhD5t5r 就是默认的密码
#使用生成的临时密码登陆mysql
mysql -uroot -p'hiqt+XhD5t5r'
如下图,登录成功
1.4 设置root用户密码
此时均在mysql> 下执行命令! 每个命令末尾必须加 ; 号!
查看MySQL安全策略
SHOW VARIABLES LIKE 'validate_password%';
他说我们必须要要先设置一个密码,才能够进行
#设置密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';
再次查看MySQL安全策略
SHOW VARIABLES LIKE 'validate_password%';
主要修改的是这两条,一个是长度,一个是密码强度(5.7版本和8.0版本命名不同)
#设置密码长度最低位数
set global validate_password.length=4;
#设置密码强度级别
set global validate_password.policy=0;
validate_password_policy有以下取值:
- 0 or LOW:Length
- 1 or MEDIUM:numeric, lowercase/uppercase, and special characters
- 2 or STRONG:Length; numeric, lowercase/uppercase, and special characters
- 默认是1,即MEDIUM,所以刚开始设置的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符。
[图片]
#刷新权限,再次查看权限是否修改成功
flush privileges;
SHOW VARIABLES LIKE 'validate_password%';
可以看到我们已经修改成功了!
进行最后一步!
将MySQL密码设置成我们自己想要的密码(例如123456)
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
1.5 远程连接
远程登录还需要授权远程登录,Mysql默认不允许远程登录
另外还需要设置关闭防火墙,不关防火墙就开放3306端口
1.5.1 授权
#授权
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
命令说明:
- ALL PRIVILEGES :表示授予所有的权限,此处可以指定具体的授权权限。
- . :表示所有库中的所有表
- ‘root’@‘%’ : myuser是数据库的用户名,%表示是任意ip地址,可以指定具体ip地址。
- IDENTIFIED BY ‘mypassword’ :mypassword是数据库的密码,这里是123456
1.5.2 开发3306端口或者关闭防火墙
首先要退出MySQL:exit;
开放端口
iptables -t filter -I INPUT -p tcp --dport 3306 -j ACCEPT
- -t:指定给哪个表格设置
- -I:插入一条规则。如果没有指定此规则的顺序,默认是插入变成第一条规则 INPUT:链名称
- -p:指定此规则适用于哪种数据包格式
- –dport:端口范围,限制目标的端口号码
- -j:后面接操作,主要有ACCEPT(接收)、DROP(丢弃)、REJECT(拒绝)、LOG(记录)
关闭防火墙(我比较喜欢这种)
#关闭
systemctl stop firewalld
#开机禁用
systemctl disable firewalld
#查看状态
systemctl status firewalld
1.5.3 测试链接
查看虚拟机的IP地址,也就是我们之前在网络设置的
(5.7版本可以直接连接)
打开Navicat进行测试
当我们点测试连接时,不允许我们进行连接
1.5.4 修改
这个问题是因为在数据库服务器中的mysql数据库中的user的表中没有权限(也可以说没有用户)
其实是,默认user中给我们的连接名设置成了 localhost,当我们连接名使用localhost的时候就可以连接
但是这并不符合我们的习惯,因为我们想用什么连接名应该是都可以连接的
#进入数据库
mysql -uroot -p 123456
之后的操作均在MySQL环境下运行
show databases;
use mysql;
show tables;
select Host, User from user;
当我们执行到这一步的时候,就发现了我们上述说的问题
因此我们只需要将Host字段的localhost 改为通配符 % 即可
update user set Host='%' where User='root';
最后,再刷新一下!
flush privileges;
1.5.5 最后的连接
再去Navicat里测试连接即可!
#退出mysql命令
exit;
1.6 卸载MySQL
#查看已安装的mysql
rpm -qa|grep -i mysql
#查看所有mysql有关的软件源
yum repolist all | grep mysql
#卸载mysql
yum remove -y mysql mysql-libs mysql-common
#删除mysql下的数据文件
rm -rf /var/lib/mysql
#删除mysql配置文件
rm /etc/my.cnf
#删除mysql存储库
yum remove -y mysql80-community-release-el7-6.noarch
二、安装JDK(手动安装)
其实不光可以手动安装,也可以使用rpm或者yum进行安装,或者使用docker,这里不给出(自行搜索)
官网下jdk(http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.htm)
这里直接给出我下载好的:https://pan.baidu.com/s/1EvJ54hpHw2ctl_jPm2GR-g?pwd=1234
2.1 上传压缩包
#tar -zxvf 用于解压 .tar.gz 后缀结尾的
#tar -xvf 用于解压 .tar后缀结尾的
tar -zxvf jdk-8u371-linux-x64.tar.gz
#将解压好的文件移动到/usr/local/目录下
mv jdk1.8.0_371/ /usr/local/
#两个合起来就是,可以直接解压到 /usr/local目录下
tar -zxvf jdk-8u371-linux-x64.tar.gz -C /usr/local/
#进入/usr/local目录下,查看是否移动成功
ll
2.2 编辑环境变量
vim /etc/profile
按a或者i进入编辑模式 出现INSERT
在配置文件里输入如下内容
#(注意此文件名与你解压出来的文件名要一样)
export JAVA_HOME=/usr/local/jdk1.8.0_371
export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/
export PATH=$PATH:$JAVA_HOME/bin
#切换到末行模式
esc
#保存并退出
:wq
#重新加载配置文件
source /etc/profile
#查看是否配置成功
java -version
三、安装Tomcat(手动安装)
3.1 上传解压
https://tomcat.apache.org/download-90.cgi 也可以自己官网下载历史版本
那我们安装软件一般是放在/usr下的,一些临时文件可以放/tmp下,或者其他软件可以放在/opt下(其实也无所谓,自己想怎么放就怎么放)
#因此我们在/usr下创建tomcat目录
mkdir /usr/tomcat
#解压:然后将我们下载好的tomcat上传到此目录下解压即可
tar -zxvf apache-tomcat-9.0.75.tar.gz
#为了方便我们重命名一下
mv apache-tomcat-9.0.75 tomcat9.0
3.2 配置环境变量
注意:这里我们配置环境变量的前提是已经安装并配置好了JDK!
/etc 一般是存放我们系统的配置文件的
#配置命令
vim /etc/profile
#shift+g快速将光标定位到最后一行,然后按i,再输入下面代码
CATALINA_HOME=/usr/tomcat/tomcat9.0
#保存并退出
esc
:wq
#输入下面命令让设置的环境变量生效
source /etc/profile
3.3 启动Tomcat
#第一种启动方法:进入到/usr/tomcat/tomcat9.0/bin目录下,输入以下命令,也就是直接直接shell脚本
./startup.sh
#第二种方法,无论在哪个目录都可以启动tomcat
sh /usr/tomcat/tomcat9.0/bin/startup.sh
#查看tomcat是否启动成功,输入以下命令查看
ps -ef | grep tomcat
#关闭tomcat 第一种方法:进入到/usr/tomcat/tomcat9.0/bin目录下,输入以下命令
./shutdown.sh
#关闭Tomcat 第二种方式
sh /usr/tomcat/tomcat9.0/bin/shutdown.sh
#验证tomcat是否安装成功
http:\\IP地址:8080
四、安装NodeJS
# 在/usr下创建nodejs目录
mkdir nodejs
# 在/usr/nodejs下运行此命令,
wget https://nodejs.org/dist/v16.17.0/node-v16.17.0-linux-x64.tar.xz
# 解压
tar -xf node-v16.17.0-linux-x64.tar.xz
# 改目录名
mv node-v16.17.0-linux-x64 node-v16
# 进入node-v16 下的 bin目录查看是否能执行node命令(查看node版本)
cd /usr/nodejs/node-v16/bin
./node -v
# 配置环境变量,在最后一行插入
vi /etc/profile
插入内容在此:export PATH=$PATH:/usr/nodejs/node-v16/bin
# 配置软连接 相当于全局变量,在任何文件夹都能查看版本信息
ln -s /usr/nodejs/node-v16/bin/node /usr/local/bin/
ln -s /usr/nodejs/node-v16/bin/npm /usr/local/bin/
五、Docker安装Nginx
# 获取最新版nginx镜像
docker pull nginx:latest
# 查看本地镜像
docker images
# 运行容器
docker run --name nginx-test -p 8080:80 -d nginx
# 安装成功 最后我们可以通过浏览器可以直接访问ip:8080 端口的 nginx 服务