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 권한을 주면 된다.
![](https://blog.kakaocdn.net/dn/dZvCdT/btsIKGi1z6T/7aVx0tATixGuoERk9h2O1k/img.png)
이제 해당 데이터베이스를 아까 생성한 사용자로 재연결하여 사용하면 된다.
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 |