第十七节Linux安装mysql数据库

本文详细介绍了如何在CentOS系统上安装MySQL,包括设置安装路径、更新yum源、卸载原有MySQL、添加RPM源、配置环境变量、安装、启动、修改默认密码、设置远程访问、备份与恢复,以及卸载MySQL的步骤。
摘要由CSDN通过智能技术生成

目录

1.安装mysql

1.1.先创建安装文件路径:/data/app/mysql

1.2.更新yum本地缓存

1.3.查看系统中是否已安装mysql

1.4.卸载系统自带的mysql及其依赖(防止冲突)

1.5.下载wget命令

1.6.给centos添加rpm源,并且选择比较新的源

1.7.安装下载好的rpm文件

1.8.安装成功后,会在/etc/yum.repo.d/下面新增两个文件

1.9.修改mysql-community.repo文件

1.10.在cd /app/mysql/目录下使用yum安装mysql

1.11.查看下mysql的版本,确定是否安装成功

1.12.启动mysql服务

1.13.设置mysql开机启动

1.14.从mysqld.log文件中,查看mysql临时密码

1.15.复制上面的临时密码,登录mysql (/DkVmkt&f6hB)

1.16.修改默认密码

1.17.密码设置成功后退出,重新启动mysql 使用新密码登录

1.18.设置mysql数据库远程可以访问

1.19.刷新mysql的系统权限相关表

1.20.重启mysql服务

1.21.更改mysql的语言

1.21.1.登录mysql

1.21.2.输入:status

1.21.3.先退出mysql,然后再到/etc目录下的my.cnf文件下修改一下文件内容

1.21.4.修改/etc/my.cnf文件

1.21.5.保存修改后的my.cnf文件后,重启下mysql,然后输入status再次查看都是utf8就可以了

1.22.更改mysql的密码难度

1.22.1.查看mysql默认密码复杂度:

1.22.2.修改密码复杂度命令:

1.22.3.修改密码最小长度限制命令:

2.创建MySQL用户

3.mysql导入sql文件

3.1.使用创建的用户登录

3.2.查看当前数据库

3.3.切换到自己的数据库

3.4.导入数据

4.mysql导出sql文件

5.mysql自动备份

5.1.创建mysql备份文件存放路径

5.2.给文件夹授权

5.3.创建 akmysql.sh文件

5.4.给akmysql.sh文件授权

5.5测试akmysql.sh文件是否可执行

5.6.设置mysql定时备份

5.7.重启crontab

6.卸载linux上的mysql

6.1.检查安装的mysql组件

6.2.将查询出来的文件逐个删除,如

6.3.删除mysql相关文件

6.4.查找残留目录,然后使用rm命令逐一删除


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

 设置每天中午1210分备份数据:

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相关的全部删除即可卸载完毕

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

akglobe

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值