DBeaver 툴에서 MySQL 데이터베이스의 덤프 파일을 가져오는 방법에 대해서 기록하려고 한다.
Dump (덤프)
데이터베이스의 데이터를 백업하는 것
Dump(덤프) 가져오기
덤프의 백업 파일을 이용해 데이터를 복원하는 작업
0. MySQL에 DB, 사용자 생성하기
0-1. DB 생성
1. (윈도우 11 기준) 터미널 -> root 사용자로 접속
윈도우 11 기준으로 터미널에 접속 후 아래 명령어를 입력하여 mysql을 root 사용자로 접속한다.
참고로 비밀번호는 입력할 때 보이지 않는 것이 정상이고, 1234가 국룰이다.
mysql -u root -p
2. DB 생성
abc 데이터베이스를 mysql에 생성
CREATE DATABASE abc;
3. 데이터베이스 확인
데이터베이스가 만들어졌는지 확인 가능하다.
SHOW DATABASES;
0-2. 사용자 생성
1. 사용자 생성
나는 로컬호스트의 사용자로 생성했다 !
CREATE USER '사용자'@'localhost' IDENTIFIED BY '비밀번호';
2. abc 데이터베이스에 생성한 사용자에게 권한 부여하기
GRANT ALL PRIVILEGES ON abc.* TO '사용자'@'localhost';
FLUSH PRIVILEGES;
GRANT SUPER ON *.* TO '사용자'@'localhost';
FLUSH PRIVILEGES;
사용자가 제대로 추가되었는지 확인
SELECT User, Host FROM mysql.user WHERE User='사용자';
show grants for '사용자'@'localhost';
1. DBeaver에서 MySQL DB에 연결 후 Dump 파일 import하기
1-1-1. '새 데이터베이스 연결' (Ctrl + Shift + N)
DBeaver를 실행하면 좌측 상단에 '새 데이터베이스 연결' 아이콘을 클릭하면 된다.
1-1-2. MySQL 선택 - 다음
1-1-3. 연결 설정
Connection Settings 창에서 다음 정보를 입력한다.
(***나는 root 사용자로 dump 파일을 import 했는데,
만약 다른 사용자 계정으로 dump 파일을 import 할거라면 SUPER 권한을 부여한 후 진행하는 것을 추천한다.)
- Host : 데이터베이스 서버의 주소 입력 (ex. localhost 또는 서버 IP)
- Port : 기본 MySQL 포트인 3306 입력
- Database 이름 입력
- Username 입력 (덤프 파일 import 시 root 사용자로 입력)
- Password 입력
위의 설정을 모두 마친 후 좌측 하단 'Test Connection'을 눌러 연결이 성공적으로 이뤄지는지 확인
이후 테스트 연결이 성공적으로 잘 연결되었다면 '완료' 버튼 눌러야한다.
'완료' 버튼을 눌렀다면 좌측 'Database Navigator'에 성공적으로 mysql db가 반영된 것을 볼 수 있다.
1-2-0. 데이터베이스 덤프 (백업) 하기
현재 나는 sql 덤프파일이 있으므로 해당 파일을 DBeaver에서 가져오겠다.
* 덤프파일
dump240723.sql
1-2-1. DBeaver 실행 - DB에 연결
DBeaver를 실행하여 덤프 파일을 import 하고자 하는 데이터베이스에 연결한다.
이미 연결한 상태이므로 패스하겠다.
1-2-2. 데이터베이스 선택 - 도구 - Execute script 선택
덤프 파일을 import 하고자 하는 데이터베이스에서 오른쪽 마우스를 클릭하고
도구(Tools) - Execute script를 선택한다.
1-2-3. 덤프 파일 선택 후 Start
우측 상단 'Input' 영역의 파일 모양 아이콘 클릭하여 덤프 파일 (.sql) 선택 후
우측 하단 'Start' 버튼 클릭하여 스크립트를 실행한다.
성공적으로 덤프 파일이 import 되어서 필요한 테이블들이 생성되었다.
▶ ERROR 1227 : 권한부족 에러
<에러 메시지>
ERROR 1227 (42000) at line 1740: Access denied; you need (at least one of) the SUPER privilege(s) for this operation
특정 명령어를 실행하기 위해 필요한 권한이 부족하다는 의미이다.
MySQL 덤프 파일에는 SUPER 권한이 필요한 명령어가 포함되어 있을 수 있기 때문에 생기는 에러다.
root 사용자로 해당 데이터베이스에 로그인하여 덤프 파일을 import 하거나,
사용자에게 SUPER 권한을 주면 된다.
이제 해당 데이터베이스를 아까 생성한 사용자로 재연결하여 사용하면 된다.
2. cmd에서 MySQL dump 파일 import하기
2-1. cmd 실행 후 MySQL dump 파일 import 명령어 입력
mysql -u 사용자 -p 데이터베이스 < C:\dump 파일 경로\dump20240726.sql
해당 사용자의 비밀번호까지 입력해주면 된다.
▶ dump 파일 관련 명령어 참고
//dump 파일 생성
mysqldump -uUserID -pPassWord DatabaseName > C:\파일경로\FileName.sql
//Function 포함 dump 파일 생성
mysqldump --routines -uUserID -pPassWord DatabaseName > C:\파일경로\FileName.sql
//dump 파일 import
mysql -uUserID -pPassWord DatabaseName < C:\파일경로\FileName.sql
'[Etc]' 카테고리의 다른 글
[Window/PuTTY] no supported authentication methods available (server sent publickey gssapi-keyex gssapi-with-mic) (0) | 2024.08.02 |
---|---|
[Window] MySQL 5.7 삭제 후 재설치 (0) | 2024.07.26 |
[Eclipse] 'Send Classpath Notifications' has encountered a problem (0) | 2024.07.11 |
hELLO Tistory 블로그 스킨 적용하기 (1) | 2024.06.25 |
[Eclipse] SVN 연결 (0) | 2024.06.24 |