系统:CentOs 7.0 正式版_64位
下载jdk-8u201-linux-x64.tar.gz
(奇数版本8u201为bug修复的稳定版本,偶数版本8u202为bug未修复版本)
上传到服务器/usr/java目录下
解压包
tar -xzvf jdk-8u201-linux-x64.tar.gz
配置系统环境变量
在/etc/profile文件末尾添加如下几行
JAVA_HOME=/usr/java/jdk1.8.0_201
PATH=$PATH:$JAVA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib
export JAVA_HOME PATH CLASSPATH
执行source /etc/profile 生效
下载tomcat,解压
tar -xzvf apache-tomcat-9.0.14.tar.gz
修改profile文件
JAVA_HOME=/usr/java/jdk1.8.0_201
CATALINA_HOME=/usr/tomcat/apache-tomcat-9.0.14
PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib:$CATALINA_HOME/lib
export JAVA_HOME CATALINA_HOME PATH CLASSPATH
source /etc/profile
(输入命令,使配置文件修改生效)
输入startup.sh
启动服务器测试是否生效
使tomcat成为系统服务(可省略)
进入/etc/init.d/tomcat
在(# Licensed…)上加
# chkconfig: 2345 90 15(加的)
# description: Tomcat-en Manager(加的)
# Licensed to the Apache Software Foundation (ASF) under one or more(这一句上)
在(# OS specific support…)上加
JAVA_HOME=/usr/java/jdk1.8.0_201(加的)
CATALINA_HOME=/usr/tomcat/apache-tomcat-9.0.14(加的)
# OS specific support. $var _must_ be set to either true or false.(这一句上)
最后需要打开80端口的防火墙
cd /sbin
进入/sbin目录
iptables -I INPUT -p tcp --dport 80 -j ACCEPT
service iptables save
service iptables restart
安装mysql
安装前,我们可以检测系统是否自带安装 MySQL:
rpm -qa | grep mysql
如果你系统有安装,那可以选择进行卸载:
注意:命令中的mysql是rpm -qa | grep mysql
打印出来的东西
//mysql模块名
rpm -e mysql // 普通删除模式
rpm -e --nodeps mysql // 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除
安装mysql
http://repo.mysql.com 这个网址不同的mysql版本
wget http://repo.mysql.com/mysql57-community-release-el7-9.noarch.rpm
rpm -ivh mysql57-community-release-el7-9.noarch.rpm
//或者
//wget http://repo.mysql.com/mysql80-community-release-el7-2.noarch.rpm
//rpm -ivh mysql80-community-release-el7-2.noarch.rpm
yum update
yum install mysql-server
先检查是否有mysql用户组和mysql用户
groups mysql
若无,则添加
groupadd mysql
useradd -r -g mysql mysql
权限设置:
chown mysql:mysql -R /var/lib/mysql
初始化 MySQL:
mysqld --initialize
启动 MySQL:
如果启动报错失败重新设置权限chown mysql:mysql -R /var/lib/mysql
systemctl start mysqld //启动
systemctl stop mysqld //停止
service mysqld restart //重启
查看 MySQL 运行状态:
systemctl status mysqld
验证 MySQL 安装
[root@host]# mysqladmin --version
Mysql安装成功后,查看默认密码:
grep 'temporary password' /var/log/mysqld.log
//或是
vi /var/log/mysqld.log
//找到 A temporary password is generated for root@localhost
进⼊数据库 之后 执⾏ 修改root密码
set password for root@localhost = password('123456');
最后需要打开3306端口的防火墙
cd /sbin
进入/sbin目录
iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
service iptables save
service iptables restart
解决host is not allowed MySQL不允许从远程访问的方法
use mysql;
update user set Host = '%' where User = 'root';
flush privileges;
//本地登录默认不需要密码 如果想要密码验证
更改plugin内容:update user set plugin='mysql_native_password' where user='root';
查看user表中,账号root的plugin,默认内容为:unix_socket
直接改为mysql_native_password
也可以
执⾏:flush privileges;
重启数据库:systemctl restart mysqld
mysql自动备份(可参考https://www.jb51.net/article/150868.htm)
安装crontab
yum install vixie-cron
yum install crontabs
启动命令
//CentOS6上的cron命令
service crond start //启动服务
service crond stop //关闭服务
service crond restart //重启服务
service crond reload //重新载入配置
chkconfig crond on //设置开机自动启动crond服务
//CentOS7上的cron命令
systemctl start crond.service //启动服务
systemctl stop crond.service //关闭服务
systemctl restart crond.service //重启服务
systemctl reload crond.service //重新载入配置
systemctl status crond.service //查看状态
执行的脚本
crontab -e 添加相应的任务
crontab -l //列出当前的所有调度任务
crontab -r //删除所有任务调度工作
自动备份过程
添加backup.sh文件
find 路径 -mtime +0 -name "*.sql" -exec rm -Rf {} \;
mysqldump -u** -p** --all-databases > 路径backup__$(date +%Y%m%d_%H%M%S).sql
find 路径 -mtime +0 -name "*.sql" -exec rm -Rf {} \;
mysqldump -u** -p** 指定数据库名 > 路径backup__$(date +%Y%m%d_%H%M%S).sql
mtime参数:
-mtime n 按照文件的更改时间来找文件,n为整数。 n 表示文件更改时间距离为n天
-n 表示文件更改时间距离在n天以内
+n 表示文件更改时间距离在n天以前
例:
-mtime 0 表示文件修改时间距离当前为0天的文件,即距离当前时间不到1天(24小时)以内的文件。
-mtime 1 表示文件修改时间距离当前为1天的文件,即距离当前时间1天(24小时-48小时)的文件。
-mtime +1 表示文件修改时间为大于1天的文件,即距离当前时间2天(48小时)之外的文件
-mtime -1 表示文件修改时间为小于1天的文件,即距离当前时间1天(24小时)之内的文件
配置crontab
crontab -e
//编辑添加每8小时执行一次
0 */8 * * * 路径backup.sh
还原备份
mysqldump -u** -p** --all-databases < **.sql