본문 바로가기
프로그래밍/실무일상

MYSQL 데이터 베이스 이전

by 마루의 일상 2021. 5. 21.
728x90
반응형

먼저 데이터 베이스 다른 서버에서 다른 서버로 이전하는 방법입니다.

사전에 철저한 백업후 진행 하시기 바랍니다.

 

사전 정보 - 밑의 정보는 가상의 정보입니다.

 

기존 서버 데이터베이스명 : croft

기존 서버 유저 : croftuser

기존 서버 비밀번호 : croftpassword

 

신규 서버 데이터베이스명 : croft

신규 서버 유저 : croftuser

신규 서버 비밀번호 : croftpassword

 

먼저 신규 서버에 이전 할 데이터베이스, 유저, 유저 비밀번호를 설정해 줍니다. 

 

[root@localhost bin]# mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.5.38-log Source distribution

Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

 

데이터베이스 추가

mysql> create database croft default character set euckr;

→ euckr 부분에 utf8 로도 설정 가능. 기존에 캐릭터셋이 euckr이라서 euckr로 설정함

 

테이블 변경
mysql> use mysql;
Database changed

 

사용자 추가
mysql> create user croftuser@localhost identified by 'croftpassword';
Query OK, 0 rows affected (0.00 sec)

 

사용자 권한 부여

mysql> grant all privileges on croft.* to croftuser@localhost identified by 'croftpassword';
Query OK, 0 rows affected (0.00 sec)

 

새로운 설정 적용
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

 

mysql> exit;

 

이전 서버에서 데이터 백업

[root@localhost ~]# mysqldump -u root -p croft > test_backup.sql

 

백업 받은 파일을 신규서버에 적당한 위치에 업로드

 

업로드한 파일이 있는 위치에서

[root@localhost ~]# mysql -u root -p croft < test_backup.sql 실행

비밀번호 물어보면 비밀번호 입력 

 

복구할때 오류 날 경우

오류 : ERROR 2006 (HY000) at line 868: MySQL server has gone away

[root@localhost ~]# vi /etc/my.cnf

max_allowed_packet = 128M --> 적당한 값으로 변경

 

이렇게 하면 db이전 완료

728x90
반응형