innoxtrabackup 备份 root 安全问题 企业级备份方法
发布时间:2022-02-23 15:22:56 所属栏目:MySql教程 来源:互联网
导读:流程介绍: [ ] 安装 innobackupex [ ] 备份数据 [ ] 创建并授权备份用户 看了网上很多的 innobackupex 备份的实例,发现很多都是直接使用 root 用户进行对数据进行备份;然而,这样的备份方式是非常不安全的,mysql 数据库的 root 密码直接暴露在屏幕前;说
流程介绍: [ ] 安装 innobackupex [ ] 备份数据 [ ] 创建并授权备份用户 看了网上很多的 innobackupex 备份的实例,发现很多都是直接使用 “root” 用户进行对数据进行备份;然而,这样的备份方式是非常不安全的,mysql 数据库的 “root" 密码直接暴露在屏幕前;说白了这和 ”裸奔“ 有啥区别;如果数据库的密码落在了别人的手里,那么后果可.....(这个靠自己想吧)。这篇文章就是解决这个问题而生的! 一、安装 innobackup 安装依赖包 # yum -y install rsync perl-DBD-MySQL numactl libaio-devel perl-Digest perl-Digest-MD5 # wget https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/l/libev-4.15-3.el7.x86_64.rpm # rpm -ivh libev-4.15-3.el7.x86_64.rpm # wget https://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-2.4.11/binary/redhat/7/x86_64/percona-xtrabackup-24-2.4.11-1.el7.x86_64.rpm # rpm –ivh percona-xtrabackup-24-2.4.11-1.el7.x86_64.rpm 二、备份数据 # innoxtrabackupex --defaults-file=/etc/my.cnf --socket=/data/mysql/mysql.sock --user=root --password=123456 /mnt/xtra 在最后有这个提示就是备份成功 温馨提示: 如果在企业里面对数据这样来进行备份得话,那么 root 用户的密码直接就暴露出去了,这样和 “裸奔” 有什么区别,这也太不安全了吧! 所以用进行对用户进行授权登陆,进行权限的控制,用授权的用户进行备份....... 三、创建并授权备份用户 Mysql> grant reload,lock tables,replication client,create tablespace,process,super on *.* to 'xtrabackup'@'localhost' identified by '123456'; Mysql> flush privileges; 不使用( grant all on . to 'root-text1'@'%' indentified by '123456'; ) 创建的原因是为了控制权限的利用,避免权限的滥用 注意: 尝试用 “xtrabackup” 用户登陆 mysql ,可以正常登陆,对库/表/用户只有查看的权限,不能进行删除修改 用 “xtrabackup” 用户进行备份数据库 # innoxtrabackupex --defaults-file=/etc/my.cnf --socket=/data/mysql/mysql.sock --user=xtrabackup --password=123123 /mnt/xtra 备份成功 登陆 mysql ,对用户权限的查看 Mysql> select user,host,Reload_priv from user; 正因为授权给 “xtrabackup” 用户有了 “Reload”重加载的权限才能对数据库进行备份 在数据库上尝试用 “back” 用户进行备份,会发现报错。 (编辑:老爷爷站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |