sugar.kim

[mysql] 다른 서버에서 사용하는 DB정보 복사 후, 특정 사용자에게 외부 아이피 접속 권한 주기 본문

DEV/dev.실무내용정리

[mysql] 다른 서버에서 사용하는 DB정보 복사 후, 특정 사용자에게 외부 아이피 접속 권한 주기

김슈가 2023. 2. 15. 14:19
728x90
반응형

특정 서버에서 사용중인 DB의 Database,Data들을 그대로 복사해오는 방법이다. mysqldump 명령어로  sql파일을 만든 후 복사 진행할 서버의 DB에 접속하여 sql 파일을 풀어주면 된다. 

1. 복사 진행 할 DB가 있는 곳에서 복사 대상인 DB 정보의 모든 데이터를 아래 명령어를 사용해서 sql 파일로 만든다. 

mysqldump -uroot -p -h서버아이피 --all-databases > /home/dev_all_databases.sql

2. /home  경로 아래에 sql 파일이 생성된 것을 확인할 수 있다. (필자는 root권한 확인불가라 DB팀에 요청하여 sql 파일을 받기는 하였다.)

/home/dev_all_databases.sql

3. 만들어진 sql 파일을 복사 진행할 DB로 이동 후, sql 파일 실행하여 쿼리 명령어들을 실행 시킨다. (※참고)

mysql -uroot -p
use mysql;
# sql 파일 실행 명령어
source /home/dev_all_databases.sql
# 복사한 Database, Data들 확인
select database();

4.사용자 정보 확인 후 외부 아이피에서 접속이 가능하도록 특정 사용자에게 권한을 준다. (※참고)

# 아래 명령어로 DB접속 진행할 user 정보 확인
select host,user,authentication_string,password_expired, password_last_changed from user;
# DB접속 진행할 user에게 외부 아이피 접속 허용 권한 주기
GRANT ALL PRIVILEGES ON *.* TO '유저네임'@'%' IDENTIFIED BY '패스워드';
FLUSH PRIVILEGES;

5. 외부에서 해당 리눅스 서버 아이피, 등록된 사용자와 패스워드 정보로 접속이 가능해진다.

728x90
반응형
Comments