我们正在从亚马逊ec2数据库迁移到亚马逊rds数据库。大多数表都很小,可以使用sql developer copy命令移动,但是一些表更大(3M +记录)。为了加快这些速度,我在两个系统之间创建了数据库链接。那些工作正常。然后我运行了以下内容:
create table schema.tablename as select * from schema.tablename@ec2db;
ec2db是旧数据库。该表包含3,503,064条记录。但是,新数据库表仅包含3,454,685条记录。 create table语句期间没有生成错误。这是可重复的(即:我删除表并再次运行它,并加载相同数量的记录。)
为什么会发生这种情况的任何想法?当我执行create table时,当我执行select(*)时,为什么表的内容与同一个表的内容(完全指定)不同?