设置某个ip对mysql服务器有权限,以及mysql定时备份

CREATE USER 'new_username'@'211.68.%.%' IDENTIFIED BY 'password_for_new_username';

GRANT ALL ON * TO 'new_username'@'211.68.%.%';

 

这样去mysql库地下的user表中,就多了一条记录,而且是new_username用211.68.%.%(%是mysql的通配符)这个客户端时候是有全部权限的

如果只需要做mysqldump的话,只需要开启两个权限:Select_priv和Lock_tables_priv

 这边给出一个简单的mysqldump命令行:

shell_dir=$(cd "$(dirname "$0")"; pwd)
mysqldump --default-character-set=utf8 -h114.255.*.* -uback_up -pyourpassword table > $shell_dir/db_backup/system-`date "+%Y-%m-%d-%H-%M-%S"`.sql

crontab -e加入定时任务就可以(每天凌晨三点执行一遍)

00 03 * * * /root/system/backup.sh

 

注意mysql服务器判断客户端连接的ip,不一定是客户端的本机ip,因为有可能经过了代理,要看需要允许哪些客户端ip访问mysql服务器。简单的办法是在客户端上运行,mysql -uusername -p看看提示,如下

ERROR 1045 (28000): Access denied for user 'back_up'@'114.255.*.*' (using password: YES)

把user表中,对应的host修改成相应的ip地址就可以。

posted @ 2013-12-06 19:50  yanghuahui  阅读(347)  评论(0编辑  收藏  举报