centos7yum安装mysql5.7

1、安装mysql5.7

复制代码
(1) 正常安装
[root@BrianZhu /]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
[root@BrianZhu /]# yum -y install mysql57-community-release-el7-10.noarch.rpm
[root@BrianZhu /]# yum -y install mysql-community-server

(2) 如果上面安装很慢,要么切yum源,要么缓存rpm包
如果云主机下载很慢(需要没有安装过mysql干净的系统,如果有mysql会下载失败)(多试几次)
# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
# yum install --downloadonly --downloaddir=./ mysql-community-server
# 将下载的依赖包打包到新的环境

2、启动mysql

复制代码
(1) 启动mysql
systemctl start  mysqld.service
systemctl enable  mysqld.service
systemctl status mysqld.service
(2) 查看默认密码(#Vy?fk?uo7,1)
# grep "password" /var/log/mysqld.log
2021-08-01T02:17:57.056709Z 1 [Note] A temporary password is generated for root@localhost: #Vy?fk?uo7,1

如果找不到密码就破解

3、破解mysql密码

复制代码
0、一般情况通过日志就能查看到mysql的秘密
# tail -f /var/log/mysql.log
[Note] A temporary password is generated for root@localhost: VwshKuCya8-=

1、修改my.cnf
[mysqld] 
skip-grant-tables                 #跳过授权表

2、重启mysql
/etc/init.d/mysqld restart 

3、空密码登录mysql
mysql -uroot -p

4、先更新一次密码
mysql> UPDATE mysql.user SET authentication_string=password('wenqiang123') WHERE User='root';  # 新版
Query OK, 0 rows affected (0.00 sec)
Rows matched: 4 Changed: 0 Warnings: 0
mysql> flush privileges;                # 必须做

5、如果报错再次修改密码
mysql> show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Clouddeep@8890';                            # 密码复杂度必须要高

6、将my.cnf中的skip-grant-tables 删除
7、重启mysql

4、登录mysql

复制代码
# mysql -uroot -p -h 127.0.0.1 -P 3306

5、创建数据库并授权其他用户登录(如果可以正常创建数据库这一步不用做)

复制代码
(1) 这个版本需要升级mysql
# mysql_upgrade -uroot -p --force
# systemctl restart mysqld # 一定要重启

(2) 创建数据库
mysql> create database rdc_manager;

(3) 为用户并授权
mysql> grant all privileges on rdc_manager.* to clouddeep@'10.4.7.%' identified by 'Clouddeep@8890';
Query OK, 0 rows affected, 1 warning (0.00 sec)

6、定期备份mysql

复制代码
# cat mysql_bak.sh 
#!/bin/bash
user='root'
passwd='Clouddeep@8890'
#当前时间
date=`date -d "today" +"%Y%m%d"`
#备份的sql文件存放路径
back_path=/project/backup/mysql_backup
# 备份的数据库名称
db_name='rdc_manager'

if [[ ! -d ${back_path} ]]
then
    mkdir -p ${back_path}
fi

# backup
mysqldump -u${user} -p${passwd} --opt --default-character-set=utf8   -R --hex-blob --flush-logs ${db_name} > /${back_path}/rdc_manager-${date}.sql

# delete 
find ${back_path} -name "*.sql" -mtime +90|xargs rm -rf

# crontab -l
30 01 * * * /bin/sh /home/shell/mysql_bak.sh
相关推荐
瓯雅爱分享32 分钟前
Java+Vue构建的采购招投标一体化管理系统,集成招标计划、投标审核、在线竞价、中标公示及合同跟踪功能,附完整源码,助力企业实现采购全流程自动化与规范化
java·mysql·vue·软件工程·源代码管理
咋吃都不胖lyh3 小时前
SQL-多对多关系
android·mysql·数据分析
哲Zheᗜe༘6 小时前
了解学习MySQL数据库基础
数据库·学习·mysql
咋吃都不胖lyh6 小时前
MySQL 多表查询中,联合查询(UNION) 和子查询
mysql·数据分析
先鱼鲨生7 小时前
【MySQL】认识数据库以及MySQL安装
数据库·mysql
周杰伦_Jay8 小时前
【终端使用MySQL】MySQL 数据库核心操作全解析:从入门到性能优化
数据库·mysql·性能优化
-雷阵雨-9 小时前
MySQL——数据库入门指南
数据库·mysql
就叫飞六吧10 小时前
DataX适合全量同步和简单的增量场景
mysql
xhbh66611 小时前
【实战避坑】MySQL自增主键(AUTO_INCREMENT)全解:从锁机制、间隙问题到分库分表替代方案
android·数据库·mysql·mysql自增主键
程序员三明治15 小时前
【MyBatis从入门到入土】告别JDBC原始时代:零基础MyBatis极速上手指南
数据库·mysql·mybatis·jdbc·数据持久化·数据