目录
1.8.安装成功后,会在/etc/yum.repo.d/下面新增两个文件
1.10.在cd /app/mysql/目录下使用yum安装mysql
1.14.从mysqld.log文件中,查看mysql临时密码
1.15.复制上面的临时密码,登录mysql (/DkVmkt&f6hB)
1.17.密码设置成功后退出,重新启动mysql 使用新密码登录
1.21.3.先退出mysql,然后再到/etc目录下的my.cnf文件下修改一下文件内容
1.21.5.保存修改后的my.cnf文件后,重启下mysql,然后输入status再次查看都是utf8就可以了
1.安装mysql
1.1.先创建安装文件路径:/data/app/mysql
(1)创建文件夹
mkdir /data/app/mysql/
1.2.更新yum本地缓存
在/data/app/mysql/目录下执行命令:
yum clean cache
yum makecache
1.3.查看系统中是否已安装mysql
执行命令:
yum list installed | grep mysql
1.4.卸载系统自带的mysql及其依赖(防止冲突)
如果系统中已存在其他版本的mysql,需要先卸载
卸载mysql命令:
yum -y remove mysql-libs.x86_64
1.5.下载wget命令
wget用来从指定的URL下载文件。wget对网络有非常强的适应性,假设由于网络的原因下载失败,wget会不断的尝试,直到整个文件下载完毕。
执行命令:
yum install wget -y
1.6.给centos添加rpm源,并且选择比较新的源
RPM是CentOS 操作系统中一款默认软件管理的工具,对软件包实现快速安装、管理及维护
执行命令:
wget dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm
1.7.安装下载好的rpm文件
执行下载命令:
yum install mysql-community-release-el6-5.noarch.rpm -y
1.8.安装成功后,会在/etc/yum.repo.d/下面新增两个文件
进入到/etc/yum.repo.d/目录下:
cd /etc/yum.repos.d/
查看文件夹下有哪些文件:
ls
1.9.修改mysql-community.repo文件
在mysql5.7的内容下面将enabled改为1,gpgcheck改完0,表示安装的mysql是5.7的版本
执行编辑mysql-community.repo文件命令:
vi mysql-community.repo
修改前:
修改后:
1.10.在cd /app/mysql/目录下使用yum安装mysql
进入到/app/mysql/目录下
cd /app/mysql/
执行安装mysql命令:
yum install mysql-community-server -y
安装完成
1.11.查看下mysql的版本,确定是否安装成功
执行命令:
mysql -V
1.12.启动mysql服务
执行启动命令:
service mysqld start
1.13.设置mysql开机启动
执行命令:
chkconfig mysqld on
1.14.从mysqld.log文件中,查看mysql临时密码
执行查看临时密码命令:
grep "password" /var/log/mysqld.log
root@localhost后面就是临时密码
1.15.复制上面的临时密码,登录mysql (/DkVmkt&f6hB)
执行登录命令:
mysql -uroot -p
输入密码:
/DkVmkt&f6hB
注意事项:
1、如果临时密码中有字符 ),需要转义改为 \),不然会提示字符异常
2、-u 和-p后面不要有空格,不然会提示密码错误
1.16.修改默认密码
执行修改root密码命令:
alter user 'root'@'localhost' identified by '密码';
1.17.密码设置成功后退出,重新启动mysql 使用新密码登录
执行重启服务器命令:
service mysqld restart
登录命令:
mysql -uroot -p
输入密码:
Dqhj@@px123456
1.18.设置mysql数据库远程可以访问
开启所有的,用%代替IP,开启指定ip@后面是ip
以下用root用户示例
指定ipsql:
grant all privileges on *.* to 'root'@'192.168.0.100' identified by '123456' with grant option;
所有ipsql:
grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
注意:
其中root为用户,%表示所有权限,密码为123456
1.19.刷新mysql的系统权限相关表
执行刷新权限sql:
flush privileges;
1.20.重启mysql服务
执行重启命令:
service mysqld restart;
1.21.更改mysql的语言
1.21.1.登录mysql
执行登录命令:
mysql -uroot -p
密码
1.21.2.输入:status
可以看到,红色方框处不是utf-8,将latin修改为utf8。
1.21.3.先退出mysql,然后再到/etc目录下的my.cnf文件下修改一下文件内容
退出mysql控制台:
eixt;
进入到/etc目录下
cd /etc
1.21.4.修改/etc/my.cnf文件
执行修改my.cnf文件命令:
vi /etc/my.cnf
修改1:把下面内容添加到[client]下面
设置mysql客户端默认字符集:
default-character-set=utf8
修改2:在my.cnf文件最下面加上下面2行内容
服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
collation-server=utf8_general_ci
1.21.5.保存修改后的my.cnf文件后,重启下mysql,然后输入status再次查看都是utf8就可以了
SHOW VARIABLES LIKE 'validate_password%';
1.22.更改mysql的密码难度
1.22.1.查看mysql默认密码复杂度:
查看密码难度sql:
SHOW VARIABLES LIKE 'validate_password%';
1.22.2.修改密码复杂度命令:
修改密码复杂度sql:
set global validate_password_policy=LOW;
1.22.3.修改密码最小长度限制命令:
执行sql:
set global validate_password_length=6;
2.创建MySQL用户
sql:
create user 'study' identified by 'zjlstudy123456';
flush privileges;
CREATE DATABASE study;
grant all privileges on study.* to 'study' identified by 'zjlstudy123456';
flush privileges;
3.mysql导入sql文件
3.1.使用创建的用户登录
登录
mysql -ustudy -p
123456
3.2.查看当前数据库
执行sql:
show databases
3.3.切换到自己的数据库
切换数据库sql:
use study
3.4.导入数据
执行导入sql:source sql文件存放文字
source /data/app/mysql/data/study20220312.sql
4.mysql导出sql文件
cd到mysql安装后的目录下,找到mysqldump
(1)cd /usr/bin/
(2)执行导入命令
mysqldump -u study -p study > /data/app/mysql/data/study20220314.sql
-u是用户名
-p是密码
study是数据库
/data/app/mysql/data/study20220314.sql是数据库sql文件路径
注意: mysql 导出需要给先导出的sql文件存放的文件夹授权!!!!!!!!!!
授权文件夹命令:
chmod +x /app/mysql/data/
5.mysql自动备份
5.1.创建mysql备份文件存放路径
mkdir /data/app/mysql/backup/bakmysql
5.2.给文件夹授权
chmod +x /app/mysql/backup/bakmysql
5.3.创建 akmysql.sh文件
所在路径:/app/mysql/
创建 akmysql.sh:
vi /app/mysql/
内容如下:
#!/bin/bash
db_user="study"
db_passwd="zjlstudy123456"
db_name="study"
#进入备份目录将之前的移动到old目录
cd /data/app/mysql/backup/bakmysql
echo "you are in bakmysql directory now"
mv study* /data/app/mysql/backup/bakmysqlold
echo "Old databases are moved to bakmysqlold folder"
#备份目录
backup_dir="/data/app/mysql/backup/bakmysql"
#时间格式
time=$(date +"%Y-%m-%d")
#mysql 备份的命令,注意有空格和没有空格
sudo mysqldump -u$db_user -p$db_passwd $db_name > "$backup_dir/$db_name"-"$time.sql"
echo "your database backup successfully completed"
#这里将7天之前的备份文件删掉
SevenDays=$(date -d -7day +"%Y-%m-%d")
if [ -f /data/app/mysql/backup/bakmysqlold/pashanhu-$SevenDays.sql ]
then
rm -rf /data/app/mysql/backup/bakmysqlold/pashanhu-$SevenDays.sql
echo "you have delete 7days ago bak sql file "
else
echo "7days ago bak sql file not exist "
echo "bash complete"
fi
注释:
db_user:用户名
db_passwd:密码
db_name:数据库
/data/app/mysql/backup/bakmysql:当天备份数据库存放路径
/data/app/mysql/backup/bakmysqlold:最近7天备份数据库存放路径
SevenDays:时间
5.4.给akmysql.sh文件授权
chmod +x /app/mysql/akmysql.sh
5.5测试akmysql.sh文件是否可执行
./bakmysql.sh
5.6.设置mysql定时备份
执行定时器命令:
crontab -e
设置每天中午12点10分备份数据:
10 12 * * * /data/app/mysql/bakmysql.sh
5.7.重启crontab
/sbin/service crond restart
6.卸载linux上的mysql
6.1.检查安装的mysql组件
执行命令:
rpm -qa | grep -i mysql
6.2.将查询出来的文件逐个删除,如
执行删除依赖命令:
yum remove mysql-community-common-5.7.32-1.el7.x86_64
yum remove mysql-community-release-el6-5.noarch
6.3.删除mysql相关文件
执行删除文件命令:
yum remove mysql mysql-server mysql-libs mysql-server
rm -rf /var/lib/mysq
rm /etc/my.cnf
rm –rf /usr/lib64/mysql
rm -rf /etc/yum.repos.d/mysql*
rm -rf mysql-community-release-el6-5.noarch.rpm
6.4.查找残留目录,然后使用rm命令逐一删除
查找与mysql相关文件
whereis mysql
将mysql相关的全部删除即可卸载完毕