我目前有两个数据库:
mysql5.6.x
mysql5.7.x
现在要将mysql5.6.x 的所有数据 迁移到 mysql5.7.x 中,采取的是直接将 mysqldata 目录下的相关文件夹(数据库)拷贝到 mysql5.7.x 的data目录下。
期间出现问题,通过百度知道: innodb 的表,直接复制文件是无法使用的,会提示 table doesn't exists ,在复制的时候,应将data目录下的 ibdata1 文件一并复制过去,并且删除ib_logfile1 ib_logfile1 文件。
如果是导入到全新的数据库中(mysql5.7.x 数据库新创建,里面没有任何已创建的数据库),那肯定是完美的做法。
可若是,将被导入的数据库中已经有创建的数据库了该怎么办??
若是将 mysql5.6.x 中的 ibdata1 文件 覆盖 mysql5.7.x 中的 ibdata1 , 则从mysql5.6.x 迁移过来的数据库全部有用 , 可 mysql5.7.x 中原先已创建的数据库将全被报废。
有没有办法实现: 通过直接拷贝文件的方式 迁移数据库, 且不会出现 上述问题??
希望大神们都分享些: 数据库迁移的方法
navicat의 데이터 전송을 사용하면 마이그레이션에 필요한 데이터(테이블, 뷰, 함수 등)만 전송할 수 있습니다.
엑스트라백업
1. 정식 업그레이드 매뉴얼이 있는데 왜 바이두를 읽어야 하는지...
http://dev.mysql.com/doc/refm...
2. 대상 컴퓨터에 이미 데이터베이스가 있는 경우에도 전체 데이터베이스 디렉터리를 업로드해야 한다고 생각하시나요?
파일을 직접 복사하여 데이터베이스를 마이그레이션하는 것은 본질적으로 위험하며 계속해서 스스로를 더욱 어렵게 만들 것입니다.