EC2 발판 서버를 통해 RDS DB를 다른 RDS DB로 옮기는 방법
소개
제목대로 EC2 발판 서버를 통해 RDS DB를 다른 RDS DB로 옮기는 방법을 설명합니다.
흐름
①EC2에 SSH 접속하기
②EC2에서 RDS의 mysql에 로그인할 수 있는지 확인
③ RDS의 DB를 EC2로 내보내기
④ 다른 RDS의 DB 파라미터 그룹의 파라미터 변경
⑤EC2에서 다른 RDS로 가져오기
환경
EC2:Amazonlinux2
RDS:Aurora/mysql
①EC2에 SSH 접속하기
이 기사를 참고하십시오.
SSH 접속한 상태에서 ①~⑤까지 작업하십시오.
②EC2에서 RDS의 mysql에 로그인할 수 있는지 확인$ mysql -h RDSのエンドポイント -P 3306 -u ユーザー名 -p
Enter password:
mysql> SHOW DATABASES;
old_DB
복사할 DB 이름을 old_DB
로 지정합니다.
에러 대처 ①「Access denied」
ERROR 1045 (28000): Access denied for user
"Access denied"가 표시되고 mysql에 로그인할 수 없는 경우 보안 그룹에 문제가 있을 수 있습니다. RDS의 인바운드 규칙을 확인하고 EC2로부터의 연결이 허용되는지 확인해 보십시오.
또한, RDSのエンドポイント
, ユーザー名
, パスワード
가 잘못되었을 가능성이 있으므로, 확인 방법을 모르는 분은, 이하의 사이트를 참고에 조사해 주세요.
【AWS도해】 RDS의 유저명과 패스워드를 잊었을 경우의 확인 방법
Aurora/mysql이면 リージョン別クラスターのライターインスタンス
를 RDSのエンドポイント
로 지정했습니다.
에러 대처②「mysql: 명령을 찾을 수 없습니다」
mysql을 설치합시다.
mysql-community 리포지토리를 사용하여 mysql을 yum으로 설치합니다.$ sudo yum install https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
$ sudo rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
$ sudo yum install -y mysql
$ mysql --version
mysql Ver 8.0.18 for Linux on x86_64 (MySQL Community Server - GPL)
그 외에도 Homebrew에서 mysql을 설치하는 방법도 있습니다.
③ RDS에서 EC2로 내보내는 명령$ mysqldump --skip-column-statistics --quick --single-transaction -h RDSのエンドポイント -u 別のRDSのユーザー名 -p DB名 | sed -e 's/DEFINER[ ]*=[ ]*[^*]*\*/\*/' > /var/tmp/dump.sql
DB 이름: new_DB
옵션: --skip-column-statistic --quick --single-transaction
왜 이런 명령인지는 이쪽을 참고해 주세요.
MySQL DB에서 AWS RDS로 데이터 가져오기
④ 다른 RDS의 DB 파라미터 그룹의 파라미터 변경
다른 RDS의 mysql에 로그인하고 아래의 Value가 OFF이면 ON해야합니다.mysql> SHOW VARIABLES LIKE 'log_bin_trust_function_creators';
+---------------------------------+-------+
| Variable_name | Value |
+---------------------------------+-------+
| log_bin_trust_function_creators | OFF |
+---------------------------------+-------+
OFF인 경우 ⑤의 EC2에서 다른 RDS로 가져올 수 없습니다.
RDS의 DB 매개 변수 그룹에 새 매개 변수를 만들고 log_bin_trust_function_creators
를 1로 변경하고 RDS에 연결하고 다시 시작합니다. 그러면 Value가 ON됩니다.
RDS에 원래 붙어 있는 기본 DB 파라미터 그룹은 파라미터를 변경할 수 없는 사양이므로 새로 만들어야 합니다.mysql> SHOW VARIABLES LIKE 'log_bin_trust_function_creators';
+---------------------------------+-------+
| Variable_name | Value |
+---------------------------------+-------+
| log_bin_trust_function_creators | ON |
+---------------------------------+-------+
자세한 방법은 아래를 참조하십시오.
AWS RDS MySQL에서 create function 허용
htps : // 아 ws. 아마존. 이 m/jp/p 레미우 m 쏘 rt/k의 w㎇d 굳어서 r/rds-mysql-푼c 치온 s/
⑤EC2에서 다른 RDS로 가져오기
다른 RDS에 새 DB를 만들고 해당 DB로 가져옵니다.mysql> CREATE DATABASE new_DB;
$ mysql -h RDSのエンドポイント -u 別のRDSのユーザー名 -p DB名 < /var/tmp/dump.sql
Reference
이 문제에 관하여(EC2 발판 서버를 통해 RDS DB를 다른 RDS DB로 옮기는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/holdout0521/items/c998f63a6b39913c4aa7
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
이 기사를 참고하십시오.
SSH 접속한 상태에서 ①~⑤까지 작업하십시오.
②EC2에서 RDS의 mysql에 로그인할 수 있는지 확인$ mysql -h RDSのエンドポイント -P 3306 -u ユーザー名 -p
Enter password:
mysql> SHOW DATABASES;
old_DB
복사할 DB 이름을 old_DB
로 지정합니다.
에러 대처 ①「Access denied」
ERROR 1045 (28000): Access denied for user
"Access denied"가 표시되고 mysql에 로그인할 수 없는 경우 보안 그룹에 문제가 있을 수 있습니다. RDS의 인바운드 규칙을 확인하고 EC2로부터의 연결이 허용되는지 확인해 보십시오.
또한, RDSのエンドポイント
, ユーザー名
, パスワード
가 잘못되었을 가능성이 있으므로, 확인 방법을 모르는 분은, 이하의 사이트를 참고에 조사해 주세요.
【AWS도해】 RDS의 유저명과 패스워드를 잊었을 경우의 확인 방법
Aurora/mysql이면 リージョン別クラスターのライターインスタンス
를 RDSのエンドポイント
로 지정했습니다.
에러 대처②「mysql: 명령을 찾을 수 없습니다」
mysql을 설치합시다.
mysql-community 리포지토리를 사용하여 mysql을 yum으로 설치합니다.$ sudo yum install https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
$ sudo rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
$ sudo yum install -y mysql
$ mysql --version
mysql Ver 8.0.18 for Linux on x86_64 (MySQL Community Server - GPL)
그 외에도 Homebrew에서 mysql을 설치하는 방법도 있습니다.
③ RDS에서 EC2로 내보내는 명령$ mysqldump --skip-column-statistics --quick --single-transaction -h RDSのエンドポイント -u 別のRDSのユーザー名 -p DB名 | sed -e 's/DEFINER[ ]*=[ ]*[^*]*\*/\*/' > /var/tmp/dump.sql
DB 이름: new_DB
옵션: --skip-column-statistic --quick --single-transaction
왜 이런 명령인지는 이쪽을 참고해 주세요.
MySQL DB에서 AWS RDS로 데이터 가져오기
④ 다른 RDS의 DB 파라미터 그룹의 파라미터 변경
다른 RDS의 mysql에 로그인하고 아래의 Value가 OFF이면 ON해야합니다.mysql> SHOW VARIABLES LIKE 'log_bin_trust_function_creators';
+---------------------------------+-------+
| Variable_name | Value |
+---------------------------------+-------+
| log_bin_trust_function_creators | OFF |
+---------------------------------+-------+
OFF인 경우 ⑤의 EC2에서 다른 RDS로 가져올 수 없습니다.
RDS의 DB 매개 변수 그룹에 새 매개 변수를 만들고 log_bin_trust_function_creators
를 1로 변경하고 RDS에 연결하고 다시 시작합니다. 그러면 Value가 ON됩니다.
RDS에 원래 붙어 있는 기본 DB 파라미터 그룹은 파라미터를 변경할 수 없는 사양이므로 새로 만들어야 합니다.mysql> SHOW VARIABLES LIKE 'log_bin_trust_function_creators';
+---------------------------------+-------+
| Variable_name | Value |
+---------------------------------+-------+
| log_bin_trust_function_creators | ON |
+---------------------------------+-------+
자세한 방법은 아래를 참조하십시오.
AWS RDS MySQL에서 create function 허용
htps : // 아 ws. 아마존. 이 m/jp/p 레미우 m 쏘 rt/k의 w㎇d 굳어서 r/rds-mysql-푼c 치온 s/
⑤EC2에서 다른 RDS로 가져오기
다른 RDS에 새 DB를 만들고 해당 DB로 가져옵니다.mysql> CREATE DATABASE new_DB;
$ mysql -h RDSのエンドポイント -u 別のRDSのユーザー名 -p DB名 < /var/tmp/dump.sql
Reference
이 문제에 관하여(EC2 발판 서버를 통해 RDS DB를 다른 RDS DB로 옮기는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/holdout0521/items/c998f63a6b39913c4aa7
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ mysql -h RDSのエンドポイント -P 3306 -u ユーザー名 -p
Enter password:
mysql> SHOW DATABASES;
old_DB
ERROR 1045 (28000): Access denied for user
$ sudo yum install https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
$ sudo rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
$ sudo yum install -y mysql
$ mysql --version
mysql Ver 8.0.18 for Linux on x86_64 (MySQL Community Server - GPL)
$ mysqldump --skip-column-statistics --quick --single-transaction -h RDSのエンドポイント -u 別のRDSのユーザー名 -p DB名 | sed -e 's/DEFINER[ ]*=[ ]*[^*]*\*/\*/' > /var/tmp/dump.sql
DB 이름: new_DB
옵션: --skip-column-statistic --quick --single-transaction
왜 이런 명령인지는 이쪽을 참고해 주세요.MySQL DB에서 AWS RDS로 데이터 가져오기
④ 다른 RDS의 DB 파라미터 그룹의 파라미터 변경
다른 RDS의 mysql에 로그인하고 아래의 Value가 OFF이면 ON해야합니다.mysql> SHOW VARIABLES LIKE 'log_bin_trust_function_creators';
+---------------------------------+-------+
| Variable_name | Value |
+---------------------------------+-------+
| log_bin_trust_function_creators | OFF |
+---------------------------------+-------+
OFF인 경우 ⑤의 EC2에서 다른 RDS로 가져올 수 없습니다.
RDS의 DB 매개 변수 그룹에 새 매개 변수를 만들고 log_bin_trust_function_creators
를 1로 변경하고 RDS에 연결하고 다시 시작합니다. 그러면 Value가 ON됩니다.
RDS에 원래 붙어 있는 기본 DB 파라미터 그룹은 파라미터를 변경할 수 없는 사양이므로 새로 만들어야 합니다.mysql> SHOW VARIABLES LIKE 'log_bin_trust_function_creators';
+---------------------------------+-------+
| Variable_name | Value |
+---------------------------------+-------+
| log_bin_trust_function_creators | ON |
+---------------------------------+-------+
자세한 방법은 아래를 참조하십시오.
AWS RDS MySQL에서 create function 허용
htps : // 아 ws. 아마존. 이 m/jp/p 레미우 m 쏘 rt/k의 w㎇d 굳어서 r/rds-mysql-푼c 치온 s/
⑤EC2에서 다른 RDS로 가져오기
다른 RDS에 새 DB를 만들고 해당 DB로 가져옵니다.mysql> CREATE DATABASE new_DB;
$ mysql -h RDSのエンドポイント -u 別のRDSのユーザー名 -p DB名 < /var/tmp/dump.sql
Reference
이 문제에 관하여(EC2 발판 서버를 통해 RDS DB를 다른 RDS DB로 옮기는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/holdout0521/items/c998f63a6b39913c4aa7
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
mysql> SHOW VARIABLES LIKE 'log_bin_trust_function_creators';
+---------------------------------+-------+
| Variable_name | Value |
+---------------------------------+-------+
| log_bin_trust_function_creators | OFF |
+---------------------------------+-------+
mysql> SHOW VARIABLES LIKE 'log_bin_trust_function_creators';
+---------------------------------+-------+
| Variable_name | Value |
+---------------------------------+-------+
| log_bin_trust_function_creators | ON |
+---------------------------------+-------+
다른 RDS에 새 DB를 만들고 해당 DB로 가져옵니다.
mysql> CREATE DATABASE new_DB;
$ mysql -h RDSのエンドポイント -u 別のRDSのユーザー名 -p DB名 < /var/tmp/dump.sql
Reference
이 문제에 관하여(EC2 발판 서버를 통해 RDS DB를 다른 RDS DB로 옮기는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/holdout0521/items/c998f63a6b39913c4aa7텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)