『壹』 mysql二进制日志 恢复其中一个数据库的数据
创建临时数据库,把备份导入进去进行 恢复单独的数据库 ,
mysqlbinlog 有一个 --databases 参数可内以指定容解析出指定db相关的sql ,你可以更加这个sql来恢复数据。
能不能建立多个二进制日志文件,使每个数据库对应自己的二进制日志文件????
mysql 下 无此功能,mysqlbinlog 记录的是整个mysql 实例的变化记录,不能针对单独的db 记录日志。
『贰』 如何使用mysql数据库进行备份数据恢复
恢复整个数据库首先,如果要恢复的数据库是含有授权表的mysql数据库,将需要使用--skip-grant-tables选项运行服务器。否则,服务器将抱怨无法找到授权表。在恢复表之后,执行mysqladmin flush-privileges 来告诉服务器加载授权表,并用它们启动。将原数据库目录的内容拷贝到其他的地方。例如,您可能会在稍后用它们进行崩溃表的事后分析检查(post-mortem examination)。用最新的备份文件重新加载数据库。如果您打算使用由mysqlmp 加载的文件,则需要将它们作为mysql的输入。如果打算使用从数据库中直接拷贝的文件(如,用tar 或c p),则将它们直接拷贝回到该数据库目录中。但是,在这种情况下,应该在拷贝这些文件之前关闭服务器,然后再重新启动它。用更新日志重做在进行备份后又修改了数据库表的查询。对于所有可用的更新日志,可使用它作为mysql的输入。指定--one-database 选项,使mysql只对想要恢复的数据库执行查询。如果您知道需要使用所有的更新日志文件,可在包含日志的目录中使用下列命令:% ls-t-r-l update.(0-9)* | xargs cat | mysql--one-database db_namels 命令产生更新日志文件的单列列表,更新日志文件根据服务器生成的顺序进行排序(要知道,如果您修改了其中的任何文件,排序的顺序都将改变,这将导致更新日志按错误的顺序使用)。您很可能必须使用某些更新日志。例如,如果自备份以来所产生的日志命名为update.392、pdate.393 等等,可以重新运行它们中的命令:% mysql--one-database db_name < updata.392% mysql--one-database db_name < updata.393…如果正在运行恢复并打算使用更新日志恢复由于失策的DROP DATA BASE、DROPTABLE或DELETE 语句而丢失的信息,应确保先从更新日志中删除这些语句。恢复单个的表恢复单个表是很困难的。如果有通过mysqlmp 生成的备份文件并且它恰好不包含您想要的表数据,则需要抽取相关的行并用它们作为mysql的输入,这部分较容易。困难的是抽取应用于该表的更新日志的片段。您会发现: mysql_find_rows 实用程序对这方面有帮助,它可以从更新日志中抽取多行查询。另一种可能性是用另一个服务器恢复整个数据库,然后将所要的该表的文件拷贝到原始数据库中。这实际很容易!在将文件拷贝回数据库目录时,应确保原始数据库的服务器关闭。
『叁』 mysql 恢复数据库
xxx.frm
xxx.MYD
xxx.MYI
如果有以上三个文件,则你可以在mysql中新建一个数据库,它会生成同样的三个文件,
然后你用你的备份文件覆盖就OK
前提是版本一致
『肆』 怎么备份和还原mysql数据库
备份数据库
使用mysqlmp命令备份数据库
『伍』 怎么恢复mysql数据库
xxx.frm
xxx.MYD
xxx.MYI
如果有以上三个文件,则你可以在mysql中新建一个数据库,它会生成同样的三个文件,
然后你用你的备份文件覆盖就OK
前提是版本一致
『陆』 mysql 某个数据库被删除怎么恢复
mysql 某个数据库被删除怎么恢复
1 找个别的机器安装个同版本的mysql或从已安装同版本的其他机内器上(非同版本的也可以容试下):
拷贝 mysql/data/mysql 目录到你的mysql/data/ 下吧
2 试着启动mysql服务,如果能启动了,理论上应该丢失的只有用户、授权等一些系统信息,不影响你的使用的数据;
如果不能启动,看错误日志,争取启动了。
3 赶紧把数据备份一份出来,重新把所有库(只是你后来创建的业务相关的库,不包括mysql库)都删了,重新导入一遍。理论上不这样也可以,但只是非生产重要的环境下。
4 重新做用户授权。