恢复数据库管理员密码用户授权数据备份与恢复
Posted 腐种发芽
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了恢复数据库管理员密码用户授权数据备份与恢复相关的知识,希望对你有一定的参考价值。
修改数据库管理员密码
# mysqladmin -hlocalhost -uroot -p password "新密
码"
Enter password: 当前登录密码
恢复数据库管理员密码
#vim /etc/my.cnf
[mysqld]
#validate_password_policy=0
#validate_password_length=6
skip-grant-tables
:wq
#systemctl restart mysqld
#mysql
mysql>
update mysql.user set
authentication_string=password("123qqq") where
host="localhost" and user="root";
mysql> flush privileges;
mysql> quit
#vim /etc/my.cnf
[mysqld]
validate_password_policy=0
validate_password_length=6
#skip-grant-tables
:wq
#systemctl restart mysqld
#mysql -uroot -p123qqq
mysql>
用户授权
什么是授权:在数据库上添加新的可以连接的用户
默认数据库管理员root用户在本机登录时,才有授权权限。
授权命令的格式?
grant 权限列表 on 数据名 to 用户名;
grant 权限列表 on 数据名 to 用户名@"客户端地址";
grant 权限列表 on 数据名 to 用户名@"客户端地址"
identified by "密码" ;
grant 权限列表 on 数据名 to 用户名@"客户端地址"
identified by "密码" with grant option;
权限列表的表示方式?
all 所有权限
select,update(name,age)
数据名的表示方式?
*.* 所有库所有表
库名.* 一个库
库名.表名 一个表
用户名: 授权时自定义要有标识性,是用户登录是使用的名字
客户端地址的表示方式?
% 所有地址
192.168.2.% 网段
%.tarena.com 区域
pc101.tarena.com 主机名
identified by "密码" 连接时使用的密码
with grant option 有授权权限
给谁授权
给使用者授权 (网站服务器 )
管理者(运维工程师)
允许数据库管理员root用户可以在254主机连接数据库服务器,
连接密码是abc123 连接后有完全权限且有授权权限
mysql>grant all on *.* to [email protected]"192.168.4.254"
identified by "abc123" with grant option;
mysql>grant select,update(name) on userdb.user to
student identified by "123456";
select user(); 显示登录的用户名和客户端地址
show grants; 连接用户查看自己的访问权限
在客户端登录测试授权
#which mysql
#yum -y install mariadb
#mysql -h192.168.4.12 -uroot -pabc123
mysql>
grant all on bbsdb.* to [email protected]"192.168.4.11"
identified by "123456";
+++++++++++++++++++++++++++++++
授权信息存储在授权库mysql库里
user 已有的授权用户及访问权限
db 记录授权用户对本机库的访问权限
tables_priv 记录授权用户对本机表的访问权限
columns_priv 记录授权用户对本机表中字段的访问权限
查看已有的授权用户及权限
select user,host from mysql.user;
数据库管理员查看授权用户的权限信息
show grants for 用户名@"客户端地址";
撤销用户授权
revoke 权限列表 on 库名 from 用户名@"客户端地址";
mysql> revoke grant option on *.* from
‘root‘@‘192.168.4.254‘;
mysql> revoke delete on bbsdb.* from
‘webadmin‘@‘192.168.4.11‘;
mysql> show grants for ‘webadmin‘@‘192.168.4.11‘;
mysql>update mysql.db set
Insert_priv="N",Update_priv="N" where db="bbsdb";
mysql> flush privileges;
mysql> show grants for ‘webadmin‘@‘192.168.4.11‘;
mysql> revoke all on bbsdb.* from
‘webadmin‘@‘192.168.4.11‘;
删除授权用户
方法一:
mysql>delete from mysql.user where
user="webadmin" and host="192.168.4.11";
mysql> flush privileges;
方法二
mysql> drop user 用户名@"客户端地址";
授权用户登录后修改自己的登录密码
SET PASSWORD=PASSWORD(‘新密码‘);
管理员 root 重置授权用的登录密码
SET PASSWORD
FOR 用户名@‘客户端地址‘=PASSWORD(‘新密码‘);
++++++++++++++++++++++++++++++++
安装mysql图形管理工具 phpmyadmin
#yum -y install httpd php
#systemctl start httpd; systemctl enable httpd
[[email protected] ~]# cat /var/www/html/test.php
<?php
phpinfo();
?>
[[email protected] ~]#
客户端访问
firefox http://192.168.4.12/test.php
# tar -zxvf phpMyAdmin-2.11.11-all-languages.tar.gz
-C /var/www/html/
#cd /var/www/html/
#mv phpMyAdmin-2.11.11-all-languages/ phpmyadmin
#chown -R apache:apache phpmyadmin
#cd phpmyadmin
#cp config.sample.inc.php config.inc.php
#vim config.inc.php
17 $cfg[‘blowfish_secret‘] = ‘plj123‘;
31 $cfg[‘Servers‘][$i][‘host‘] = ‘localhost‘;
:wq
# yum -y install php-mysql
#mysql -uroot -p123qqq
mysql>create database webdb;
mysql>grant all on webdb.* to [email protected]"localhost"
identified by "123456";
客户端访问
firefox http://192.168.4.12/phpmyadmin
用户 webuser
密码 123456
+++++++++++++++++++++++++++++++++
数据备份与恢复
1 为什么要备份数据?
数据丢失或误删除时,使用备份文件恢复数据。
2 数据备份方式?
物理备份? 备份库或表对应文件
cp -r /var/lib/mysql/mysql /opt/mysql.bak
cp /var/lib/mysql/mysql/user.* /opt/
tar -zcvf /opt/mysql.tar.gz /var/lib/mysql/mysql/*
164 cp -r /mydata/mysql.bak/ /var/lib/mysql/mysql
165 chown -R mysql:mysql /var/lib/mysql/mysql
166 systemctl restart mysqld
逻辑备份?备份时根据已有的库表及记录生成对应的sql命令,把
sql保存到指定的备份文件里
3数据备份策略?
完全备份 备份所有数据(一台服务器 一个库 一张表)
差异备份 备份自完全备份后所有新产生
增量备份 备份自上一次备份后所有新产生
完全备份+差异备份
完全备份+增量备份
4在生成环境下如何实现数据备份
周期性计划任务 执行 备份脚本
00 18 * * 1 sh /shell/allbak.sh
以上是关于恢复数据库管理员密码用户授权数据备份与恢复的主要内容,如果未能解决你的问题,请参考以下文章
mysql用户管理, 常用sql语句,mysql数据库备份恢复