본문 바로가기
Linux&Ubuntu/DB

mysql 스토리지 엔진변경

by Vittorio_Lee 2023. 3. 30.
728x90
반응형
SMALL

기본 엔진 확인

ELECT engine, support FROM information_schema.engines WHERE support='DEFAULT';

 

 

내부에서 변경 

SET default_storage_engine=MyISAM;

 

영구 변경 

vi /etc/my.cnf
[mysqld]
default-storage-engine=InnoDB

 

재시작시 변경 

 

테이블만 변경 

alter table {테이블명} engine=InnoDB;

alter table {테이블명} engine=myisam;

 

만약 myisam db 정보를 innidb 로 변경 할때 .

 

1. 기존 MyISAM으로 설정된 DB를 Dump 백업한다.
# mysqldump -u {로그인아이디} -p {백업할 데이터베이스 이름} > {덤프파일 명}
# mysqldump -u root -p test_db > test_db.sql

 

2. 복원시 InnoDB로 적용하기 위해 덤프파일의 내용을 변경한다.
# sed -e ‘s/ENGINE=MyISAM/Engine=InnoDB/g’ {덤프파일 명} > {새로 적용할 덤프파일 명}
# sed -e ‘s/ENGINE=MyISAM/Engine=InnoDB/g’ test_db.sql > test_db2.sql


3. mysql 콘솔에 접속 후 기존의 데이터베이스를 삭제하고 새로 생성한다.
mysql> drop database {삭제할 데이터베이스 명}
mysql> drop database test_db
mysql> create database {생성할 데이터베이스 명}
mysql> create database test_db

 

4. 변경된 덤프파일을 이용해 데이터 베이스를 복원한다.
# mysql -u {로그인 아이디} -p {복원할 데이터베이스 명} < {새로 적용할 덤프파일 명}
# mysql -u root -p test_db < test_db2.sql

5. 복원된 테이블들의 Engine Type을 확인한다.

show table status;

728x90
반응형
LIST

'Linux&Ubuntu > DB' 카테고리의 다른 글

DB 엔진 확인  (0) 2023.09.19
mysql 5.7 ubuntu 18.04 xtrabackup  (0) 2023.07.14
db 용량 및 카운트 조회  (0) 2023.04.04
dmidecode 사용법  (0) 2022.09.23
MYSQL 디렉토리 변경  (0) 2022.09.23