导入新数据库会把原数据库全部删除吗?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了导入新数据库会把原数据库全部删除吗?相关的知识,希望对你有一定的参考价值。
用mysql命令把近期的数据库导入到一个旧的数据库中,系统是把旧的删除后导入,还是在旧的基本上覆盖导入?因为这关系到旧数据库一些残留的问题,所以想问问,谢谢。
参考技术A 关键是看你导出的sql语句咯,有drop,导入后会删除的原来表的 参考技术B 应该是删除表DROP TABLE IF EXISTS `test`;/*!40101 SET @saved_cs_client = @@character_set_client */;/*!40101 SET character_set_client = utf8 */;CREATE TABLE `test` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `name` char(20) NOT NULL, PRIMARY KEY (`id`)) ENGINE=MyISAM AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;/*!40101 SET character_set_client = @saved_cs_client */;---- Dumping data for table `test`--LOCK TABLES `test` WRITE;/*!40000 ALTER TABLE `test` DISABLE KEYS */;INSERT INTO `test` VALUES (1,'asd'),(2,'dsaii');/*!40000 ALTER TABLE `test` ENABLE KEYS */;UNLOCK TABLES;复制代码 参考技术C 导入的时候会先删除掉原来的表,再创建表,导入数据。 参考技术D 看SQL文件里有没有DROP,如果没DROP就自己删除所有表。 第5个回答 2013-11-25 其实我是想把旧的删除后再导入,如果是覆盖导入,就怕有一些旧数据库残留oracle IMPDP导入的时候,能自动把之前表中的数据都删除吗?
参考技术A不用删除,可以自动覆盖掉了。如下参考:
1.有两种导入方法:IMP和impdp。
2.IMP导入的时候:如果已经存在此表,会告诉你无法创建此表,因为表已经存在。同时使用参数full=yignore=y那就是全部导入,把dmp里的所有数据插入到表里面。
3.数据备份,使用命令:expuser/userfile=d:\\user.dmpfull=y恢复时,使用命令:impuser/userFILE=d:\\user.dmpfromuser=usertouser=userfull=yignore=y。
4.IMPDP导入的时候:用参数table_exists_action=replace进行删除后覆盖table_exists_action选项。
5.数据备份,使用命令:expdpuser/userdirectory=dump_dirdumpfile=schema.dmp
logfile=schema.logschemas=userjob_name=exp_user_schema恢复时。
注意事项:
Oracleimpdp是一个标准版本和企业版本的问题。标准版本中不支持某些函数。最好用相同的版本重新安装企业版本,包括导入较小的版本。如果必须使用当前库,则可以在导出时添加version=11.2.0。如果未能将其更改为10.2.0,请重试。
以上是关于导入新数据库会把原数据库全部删除吗?的主要内容,如果未能解决你的问题,请参考以下文章