mysql 管理员权限恢复 工具_用户授权及撤销 、 数据备份与恢复 、 MySQL管理工具...

一 、数据库管理员root用户 密码的设置。

1.1 修改数据库管理员本机登录密码(操作系统管理员有权限修改)

#mysqladmin -hlocalhost -uroot -p password "新密码"

1.2 恢复数据库管理员密码(操作系统管理员有权限修改)

#systemctl stop mysqld

#vim /etc/my.cnf

[mysqld]

skip-grant-tables

#

#

:wq

#systemctl start mysqld

#mysql

mysql> update mysql.user set authentication_string=password("新密码") where user="root" and host="localhost";

mysql> flush privileges;

mysql> quit;

#vim /etc/my.cnf

[mysqld]

#skip-grant-tables

:wq

#systemctl stop mysqld

#systemctl start mysqld

#mysql -uroot -p新密码

mysql>

+++++++++++++++++++++++++++++++++++++++

http://192.168.4.99/reguser.php

name jim

pass 123456

注册

用户授权:就在数据库服务器添加新的连接用户。

用户授权

#mysql -uroot -pabc123

mysql> grant 权限列表 on 库名 to 用户名@"客户端地址" identified by "密码" [ with grant option];

权限的表示方式: all 、 usage 、select,update(name,age),delete

库名的表示方式: 库名.表名 库名..*

用户名: 自定义

客户端地址表示方式: 192.168.4.117 192.168.2.%

identified by "密码" #登录密码

with grant option #可以有授权权限 可选项

++++++++++++++++++++++++++++++

权限撤销

mysql> revoke 权限列表 on 库名 from 用户名@"客户端地址";

++++++++++++++++++++++++++++++

删除授权用户: drop user 用户名@"客户端地址";

+++++++++++++++++++++++++++++++

查看授权用户的权限 show grants for 用户@”客户端地址“;

授权信息存储在授权库mysql 下的表里。(不同存储不同的授权信息)

mysql>use mysql;

mysql>show tables;

user 已有授权用户信息 select user,host from mysql.user;

db 授权用户对库的访问权限

tables_priv 记录授权用户对表的访问权限

columns_priv 记录授权用户对表中字段的访问权限。

+++++++++++++++++++++++++++++++++++++++

允许在192.168.4.254主机上使用管理员用户连接数据库服务器。

mysql>grant all on . to root@"192.168.4.254" identified by "123456" with grant option;

允许从网站服务器上使用bbsuser用户连接 密码是123456 只对bbsdb库下的所有表有完全权限,没有授权权限。

grant all on bbsdb.* to bbsuser@"192.168.4.30" identified by "123456";

运行使用admin用户在数据库服务器本机登录 密码123456 只有查询表记录的权限。

grant select on . to admin@"localhost" identified by "123456";

mysql> revoke 权限列表 on 库名 from 用户名@"客户端地址";

撤销root在254主机登录的授权权限

revoke grant option on . from root@"192.168.4.254";

撤销root在254主机登录的删除记录和修改记录的权限

revoke delete,update on . from root@"192.168.4.254";

撤销root在254主机登录的所有权限

revoke all on . from root@"192.168.4.254";

通过修改表记录的方式撤销用户的权限。

1 修改在对应表中的记录信息

2 fulsh privileges;

++++++++++++++++++++++++++++++++++

授权用户登录服务器后,修登录密码;

mysql> set password=password("密码");

管理员重置授权用户的登录密码

mysql> set password for 用户@"客户端地址"=password("密码");

+++++++++++++++++++++++++++++++++++++

客户端测试授权:

#which mysql

#rpm -q mariadb

#mysql -h数据库服务器的IP地址 -u用户名 -p密码

mysql> select @@hostname;

mysql> select user();

mysql> show grants;

+++++++++++++++++++++++++++++++++

四 安装mysql图形管理工具 phpmyadmin

1 准备软件运行环境 LAMP

#yum -y install httpd php php-mysql

#systemctl httpd start ; systemctl enable httpd

2 解包到网站目录下 ,并修改解压后的目录名称admin

3 创建主配置文件

4 修改配置文件 17行 和 31 行

5 客户端访问

http://192.168.4.11/admin

登录用户名

密码

++++++++++++++++++++++++++++++++++++++

三数据备份与恢复(完全备份和完全恢复)

备份方式:

物理备份: 直接拷贝库或表对应的文件(Myisam)

cp -r /var/lib/mysql/mysql /mysql.bak

tar -zcvf /mysql.tar.gz /var/lib/mysql/mysql/*

cp -r /mysql.bak /var/lib/mysql/mysql

chown -R mysql:mysql /var/lib/mysql/mysql

逻辑备份: 执行备份时,根据已有的库和表生成对应sql命令,把生成的sql命令存储到指定的备份文件里。

备份策略:

完全备份: 备份所有数据(表 、 库 、 服务器)

差异备份:备份自完全备份后所有新产生 (备份新产生的数据)

增量备份:备份自上一次备份后,所有新产生。(备份新产生的数据)

备份数据库要考虑的问题:

备份频率 备份时间 备份策略 存储空间 备份文件的命名

名.sql

备份策略使用方式:

完全+增量

完全+差异

执行数据备份的方式: 周期性计划任务crond 执行 备份脚本

(shell python)

00 23 1 sh /root/allbak.sql

5:00 t1 名

1 完全备份 10 1.sql 10

2 差异 3 2.sql 3

3 5 3.sql 8

4 1 4.sql 9

5 7 5.sql 16

6 1 6.sql 17

7 差异 2 7.sql 19

++++++++++++++++++++++++++++++++

5:00 t1 名

1 完全备份 10 1.sql 10

2 增量 3 2.sql 3

3 5 3.sql 5

4 7 4.sql 7

5 1 5.sql 1

6 3 6.sql 3

7 增量 4 7.sql 4

++++++++++++++++++++++++++++++++++

完全备份数据mysqldump

#mysqldump -uroot -pabc123 库名 > 目录名/名.sql

库名的表示方式:

--all-databases 备份数据库服务器的所有数据

库名 备份一个库里的所有数据

库 表 备份一个表的所有数据

-B 库名1 库名1 库名N 一起备份多个库的所有数据

完全恢复数据

#mysql -uroot -pabc123 studb < 目录名/名.sql

mkdir /srcriptdir

vim /srcriptdir/userdbbakall.sh

#!/bin/bash

day=date +%F

if [ ! -e /bakdir ];then

mkdir /bakdir

fi

mysqldump -uroot -pabc123 userdb > /bakdir/userdb-$day.sql

:wq

#chmod +x /srcriptdir/userdbbakall.sh

#/srcriptdir/userdbbakall.sh

#ls /bakdir/.sql

#vim /bakdir/.sql

#crontab -e

30 23 1 /srcriptdir/userdbbakall.sh &> /dev/null

:wq

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值