一.MySql5.7安装(yum)
1.下载YUM源rpm安装包
wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
2. 安装mysql源
yum localinstall mysql57-community-release-el7-8.noarch.rpm
3.安装Mysql
yum install mysql-community-server
4.启动Mysql服务
systemctl start mysqld
5.设置开机启动
systemctl enable mysqld
systemctl daemon-reload
6.获取默认密码
grep 'temporary password' /var/log/mysqld.log
得到临时密码 A temporary password is generated for root@localhost: Z+wTu(s):4Ah 使用以下命令登录mysql,要求输入密码时,输入临时密码: Z+wTu(s):4Ah
mysql -u root -p
7.设置新密码,默认密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于8位。否则会提示ERROR 1819 (HY000): Your password does not satisfy the current policy requirements错误
set password for 'root'@'localhost'=password('MyNewPass2!');
8. 也可以设置密码策略为low
set global validate_password_policy=LOW;
9.设置可远程登录,%代表所有
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'MyNewPass2!' WITH GRANT OPTION;
10.配置默认编码为utf-8
vim /etc/my.cnf #进入配置,按 "i" 进入编辑模式,添加如下内容,然后按 "ESC"退出编辑模式, 输入":wq"保存
[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
11.重新启动Mysql服务
systemctl restart mysqld
12.查看字符编码已是utf-8
show variables like 'character%';
13.配置文件路径
配置文件:/etc/my.cnf
日志文件:/var/log//var/log/mysqld.log
服务启动脚本:/usr/lib/systemd/system/mysqld.service
socket文件:/var/run/mysqld/mysqld.pid
14.解决SELECT list is not in GROUP BY clause and contains nonaggregated column报错
MySQL5.7.5及以上版本有依赖检测功能。如果启用了ONLY_FULL_GROUP_BY SQL模式(默认开启),MySQL将拒绝选择列表,HAVING条件或ORDER BY列表的查询引用在GROUP BY子句中既未命名的非集合列,也不在功能上依赖于它们。(5.7.5之前,MySQL没有检测到功能依赖关系,默认情况下不启用ONLY_FULL_GROUP_BY。)
进入配置文件:/etc/my.cnf 在[mysqld]下加上以下配置
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
注意阿里云需要配置安全组开放3306端口
15.自动定时备份mysql数据库脚本
#!/bin/bash
#使用方式:
#1.将mysqlbak.sh文件放置到/data/mysql文件夹或任意目录
#2.打开xshell,给mysqlbak.sh增加执行权限→ chmod +x mysqlbak.sh
#3.运行脚本→ ./mysqlbak.sh
#基础目录,取当前脚本目录
BASE_DIR=$(cd `dirname $0`; pwd)
#进入脚本所在目录
cd $BASE_DIR
BAK_DIR_NAME=mysqlbak
#创建mysqlbak目录
if [ ! -d $BAK_DIR_NAME ]; then
mkdir $BAK_DIR_NAME
echo "创建$BAK_DIR_NAME目录..."
else
echo "$BAK_DIR_NAME目录 OK..."
fi
#mysqlbak目录
MYSQL_BAK_DIR=$BASE_DIR/$BAK_DIR_NAME
#数据库IP
DB_HOST='127.0.0.1'
#数据库用户名
DB_USER='root'
#数据库密码
DB_PASSWORD='123456'
#数据库名,多个用空格" "隔开
DB_NAMES='dbname'
#备份时间
BAK_TIME=`date +%Y%m%d`
echo "################## ${BAK_TIME} #############################"
echo "开始备份"
#日志记录头部
echo "" >> ${MYSQL_BAK_DIR}/mysqlbak.log
echo "-------------------------------------------------" >> ${MYSQL_BAK_DIR}/mysqlbak.log
echo "备份时间为${BAK_TIME},备份数据库表 ${DB_NAMES} 开始" >> ${MYSQL_BAK_DIR}/mysqlbak.log
#遍历备份数据库
for table in $DB_NAMES; do
#进入备份目录
cd $MYSQL_BAK_DIR
#创建table目录
if [ ! -d $table ]; then
mkdir $table
echo "创建$table目录..."
else
echo "$table目录 OK..."
fi
#输出路径
DEST_DIR="${MYSQL_BAK_DIR}/${table}"
source=`mysqldump -h ${DB_HOST} -u ${DB_USER} -p${DB_PASSWORD} ${table} > ${DEST_DIR}/${BAK_TIME}.sql` 2>> ${MYSQL_BAK_DIR}/mysqlbak.log;
#备份成功以下操作
if [ "$?" == 0 ];then
#压缩备份文件
tar -czPf ${DEST_DIR}/${BAK_TIME}.tar.gz ${DEST_DIR}/${BAK_TIME}.sql > /dev/null
#删除原始文件,只留压缩后文件
rm -f ${DEST_DIR}/${BAK_TIME}.sql
#删除七天前备份,也就是只保存7天内的备份
find ${DEST_DIR} -name "*.tar.gz" -type f -mtime +7 -exec rm -rf {} \; > /dev/null 2>&1
echo "数据库表 ${DB_NAMES} 备份成功!!" >> ${MYSQL_BAK_DIR}/mysqlbak.log
else
#备份失败则进行以下操作
echo "数据库表 ${DB_NAMES} 备份失败!!" >> ${MYSQL_BAK_DIR}/mysqlbak.log
fi
done
echo "完成备份"
echo "################## ${BAK_TIME} #############################"
设置每天02:00备份一次数据库 执行以下命令,配置每天02:00备份一次mysql数据库
crontab -e
#每天02:00备份mysql数据库
00 02 * * * /data/mysql/mysqlbak.sh
一.JDK1.8安装(yum)
1.检查是否已安装java
yum list installed | grep java
2.卸载掉
yum -y remove java-1.6.0-openjdk*
yum -y remove tzdata-java.noarch
3.查看软件包列表
yum search java | grep -i --color jdk
4.选择版本安装
yum install -y java-1.8.0-openjdk*
5.查看安装的版本
java -version
6.配置环境变量,JDK默认安装路径/usr/lib/jvm
①列出文件夹列表 ls /usr/lib/jvm
②进入 vim /etc/profile 增加环境配置
# set java environment
JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.212.b04-0.el7_6.x86_64
PATH=$PATH:$JAVA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME CLASSPATH PATH
③重新加载配置文件
source /etc/profile
④查看环境变量是否配置成功
echo $JAVA_HOME
echo $PATH
echo $CLASSPATH
三.安装Nginx
1.添加nginx源
rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
2.安装nginx
yum install -y nginx
3.启动nginx
systemctl start nginx.service
4.设置开机启动
systemctl enable nginx.service
5.ngxin的默认路径
(1) Nginx配置路径:/etc/nginx/
(2) PID目录:/var/run/nginx.pid
(3) 错误日志:/var/log/nginx/error.log
(4) 访问日志:/var/log/nginx/access.log
(5) 默认站点目录:/usr/share/nginx/html
6.重新加载nginx配置命令
nginx -s reload
7.停止服务
nginx -s stop
8.项目配置示例
#管理后台地址
server {
listen 80;
server_name admin.xxx.com;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
location / {
root /home/xxx/xxx-admin/;
index index.html
# proxy_pass http://127.0.0.1:9001;
proxy_connect_timeout 600;
proxy_read_timeout 600;
}
}
#单项目spring-boot地址
server {
listen 80;
server_name api.xxx.com;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_connect_timeout 600;
proxy_read_timeout 600;
}
#SSL证书配置
#ssl on;#启用ssl功能
listen 443 ssl;
ssl_certificate cert/cert_2574000_api.xxx.com.pem;#证书文件
ssl_certificate_key cert/cert_2574000_api.xxx.com.key;#私钥文件
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #按照这个协议配置
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;#按照这个套件配置
ssl_prefer_server_ciphers on;
}
四.安装Redis
1.安装redis
yum install redis
2.下载fedora的epel仓库
yum install epel-release
3. Redis常规命令
# 启动redis
systemctl start redis.service
# 停止redis
systemctl stop redis.service
# 查看redis运行状态
systemctl status redis.service
# 重启redis
systemctl restart redis.service
# 查看redis进程
ps -ef | grep redis
4.设置开机启动
systemctl enable redis.service
5.进入配置文件设置密码等
vim /etc/redis.conf
1.解放其他ip可访问:
bind 127.0.0.1 →→→ #bind 127.0.0.1
2.取消保护模式,可以给redis desktop manager访问:
protected-mode yes →→→ protected-mode no
3.后台运行:
daemonize no →→→ daemonize yes
4.修改密码:
# requirepass foobared →→→ requirepass 123456
6.重启Redis
systemctl restart redis.service
7.使用密码登录Redis