一、MySQL备份类型
二、MySQL备份都备份什么?
三、MySQL备份工具
四、MySQL备份策略
五、备份准备工作
六、备份策略具体演示
注:系统版本 CentOS6.4 X86_64,MySQL版本 MySQL 5.5.32,相关软件下载 http://yunpan.cn/QnymShsCMzGg9
继续阅读MySQL 备份与还原详解
一、MySQL备份类型
二、MySQL备份都备份什么?
三、MySQL备份工具
四、MySQL备份策略
五、备份准备工作
六、备份策略具体演示
注:系统版本 CentOS6.4 X86_64,MySQL版本 MySQL 5.5.32,相关软件下载 http://yunpan.cn/QnymShsCMzGg9
继续阅读MySQL 备份与还原详解
1. 使用automysqlbackup
http://sourceforge.net/projects/automysqlbackup/?source=dlp
一个简单好用的工具可以每天、每周、每月、备份MYSQL数据库。支持加密。
能够自动删掉过时的备份包。
2. XtraBackup
介绍:http://www.percona.com/doc/percona-xtrabackup/intro.html
安装:http://www.percona.com/doc/percona-xtrabackup/installation/yum_repo.html
简介:同时支持innodb和MyISAM热备。MyISAM需要锁表。
MYSQL表出错。一般在phpmyadmin里,repair一下就可以了。但修复失效的时候,就要另想其他的办法了。
对于MyISAM格式的表来说,有一个很好的修复工具 – myisamchk。 继续阅读MYSQL数据库出错,REPAIR TABLE无效后的解决办法
一步完成mysql数据库复制。
mysqldump esojourn --opt -u root -p | mysql esojourn -h 192.168.0.2 -u root -p
我下面对这个命令的几个部分说明一下。mysqldump wap –opt,是把名为wap的这个数据库导出到标准输出。并且使用–opt选项。 –opt 等效于–add-drop-table, –add-locks, –create-options, –quick, –extended-insert, –lock-tables, –set-charset, 和–disable-keys。这在完全导出然后完全导入数据的时候,非常有用。
小心前后别弄反。要不就悲剧大了。
因为root权限过高,所以新建一用户esojourn,权限仅为要用到的数据库。创建语句如下:grant select,insert,update,delete on test.* to esojourn@”%” identified by “password”;其中@“%”是可以在任何地址登录。
创建后到mysql.user下查看,有该用户。但是使用mysql -u esojourn -ppassword 登录,提示无法登录:ERROR 1045 (28000): Access denied for user ‘esojourn’@’localhost’ (using password: YES)
百思不得其解,遂google,其中有人说到“mysql.user 表中有另外一些记录产生了作用,最有可能的就是已经有一条”@localhost记录,就是用户名是空,主机字段是localhost的记录。” 影响了。查看该表果然有。
mysql> select host,user,password from mysql.user;
+———–+——————+——————————————-+
| host | user | password |
+———–+——————+——————————————-+
| localhost | root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| esojourn.org| root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| 127.0.0.1 | root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| localhost | | |
| esojourn.org | | |
| localhost | debian-sys-maint | *19DF6BF8310D46D681AE072AB73ECEC99C018C19 |
| % | esojourn | *2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19 |
+———–+——————+——————————————-+
7 rows in set (0.00 sec)
但是删除那些为空(匿名)的用户后仍然无法登录。(可能是因为没有重启mysql)于是只好耐着性子看mysql参考手册。发现其中增加用户部分有这么一段话:
其中两个账户有相同的用户名monty和密码some_pass。两个账户均为超级用户账户,具有完全的权限可以做任何事情。一个账户 (‘monty’@’localhost’)只用于从本机连接时。另一个账户(‘monty’@’%’)可用于从其它主机连接。请注意monty的两个账户必须能从任何主机以monty连接。没有localhost账户,当monty从本机连接时,mysql_install_db创建的localhost的匿名用户账户将占先。结果是,monty将被视为匿名用户。原因是匿名用户账户的Host列值比’monty’@’%’账户更具体,这样在user表排序顺序中排在前面。
这段话说的很清楚,因此执行 grant select,insert,update,delete on test.* to esojourn@”localhost” identified by “password”;
退出后用esojourn登录,成功。
直接把esojourn的账户从全部主机改成localhost。
转自:http://anonymity.iteye.com/blog/347737
贴一份优化配置,备查 继续阅读Mysql优化