웹마스터 블로그

Mysql 5.5에서 5.7로 업그레이드시 ERROR 1031 (HY000) - 해결방법

Mysql 5.5에서 5.7로 업그레이드시  ERROR 1031 (HY000) - 해결방법

mysql 5.5버전에서 속도가 3배 이상 개선된 mysql 5.7로 업그레이드를 하려면, 5.6버전으로 업그레이드 한후 다시 5.7버전으로 업그레이드를 진행해야 한다.

 

Mysql 5.5 버전에서 5.6 버전으로 업그레이드는 mysqldump를 이용해 데이타베이스 전체를 백업받은후

mysql로 restore하는 과정을 통해 쉽게 업그레이드가 가능하다.

 

- mysqldump -u root -p --all-databases > backup5.5.sql

- mysql -u root -p < backup5.5.sql

 

그런데 MYSQL 5.6에서 5.7버전으로 업그레이드를 하는경우 

아래의 에러메세지를 접하는 경우가 있다.

ERROR 1031 (HY000) at line X: Table storage engine for '테이블' doesn't have this option

MYSQL에서 스토리지 엔진을 MyISAM에서 InnoDB로 업데이트 하면서 발생한 문제로 

ROW_FORMAT = DEFAULT로 변경하면 된다.

 

- 하나의 테이블만 업데이트 하는경우

ALTER TABLE 데이타베이스.테이블 ROW_FORMAT = DEFAULT ;

 

- 데이타 베이스의 모든 테이블을 한번에 업데이트 하는경우

USE INFORMATION_SCHEMA;

SELECT

CONCAT("ALTER TABLE `", TABLE_SCHEMA,"`.`", TABLE_NAME, "` ROW_FORMAT = DEFAULT;")

AS MySQLCMD FROM TABLES

WHERE TABLE_SCHEMA = "데이타베이스"

Related Posts:

comments powered by Disqus