VPS 인스턴스에서 웹사이트를 운영하고 있습니다.불터Ubuntu 18.04LTS를 실행하면 모든 것이 정상입니다. 시스템에 문제가 발생한 경우를 대비하여 복원 세션에서 인스턴스의 스냅샷을 시험해보고 싶었습니다. 그래서 나는새로운예상대로 해당 스냅샷을 배포했지만 내 웹사이트를 볼 수 없었고 error establishing a database connection
DNS를 새 IP 주소로 변경한 후에 얻었습니다. 따라서 이 경우 복원 세션이 실패했으며 목표를 달성하지 못했습니다. 지원팀에 문의했지만 그들은 스냅샷 복원 후 새 인스턴스의 일부 네트워크 구성을 수정해야 한다는 점만 지적했지만 Ubuntu 18.04LTS에서 이를 수행하는 방법에 대한 구체적인 지침은 없었습니다. 나는 그들에게 상담했다선적 서류 비치, 그러나 Ubuntu 180.04LTS 서버에서 netplan
교체하는 새로운 네트워크 설정에 대해서는 언급하지 않았습니다 .ifupdown
문서에서 지점별로 살펴보겠습니다. 다음 사항을 확인했습니다.
- 새 인스턴스에서는
/etc/udev/rules.d/70-persistent-net.rules
파일이 비어 있고 거기에 아무것도 없습니다. - 내부에 IP 주소가 없다는 내용을 검토했는데
/etc/network/interfaces
대신에 이런 주석 처리된 메시지가 있었습니다.
# 이 시스템에서는 ifupdown이 netplan(5)으로 대체되었습니다. 현재 구성은 # /etc/netplan을 참조하세요. # 이 시스템에서 ifupdown을 다시 활성화하려면 다음을 실행하면 됩니다: # sudo apt install ifupdown
그래서 /etc/netplan
설정을 검토한 결과 두 개의 파일이 있습니다.
01-netcfg.yaml
이며 비어 있습니다.
다른 하나의 10-ens3.yaml
파일에는 다음 설정이 포함되어 있습니다.
network:
version:2
renderer: networkd
ethernets:
ens3:
dhcp4: yes
그래서 저는 이 설정에 완전히 빠져버렸습니다. 나는 그것이 새로운 netplan
시스템과 관련이 없다고 생각합니다. 따라서 이 경우 내 라이브 웹사이트를 복원할 수 있도록 올바른 네트워킹 구성을 도와주시면 매우 감사하겠습니다.
답변1
@MichaelHampton이 친절하게 제공한 힌트는 설정의 WordPress 측에서 디버깅 작업을 촉발했습니다. 예, 이제 복제된 사이트가 다시 작동되어 DNS를 변경한 후 공개할 준비가 되었습니다. 그러나 지금은 이 방법을 사용하지 않을 것입니다. 왜냐하면 시스템에 문제가 발생할 경우를 대비하여 이 방법을 검토하는 중이었기 때문입니다. 그건 그렇고, 이것은 나에게 내 웹 사이트를 개발하는 방법에 대한 길을 열어주었습니다.다른VPS 서버. 예, 어떤 사람은 해당 서버에 대한 비용을 지불해야 한다는 단점이 있다고 생각할 수도 있지만 괜찮습니다. 그러면 새 서버에 대한 비용을 지불할 수 있는 한 빨리 개발을 수행할 수 있습니다(상대적으로 저렴한 시간당 지불). 또 다른 장점은 내가 가질 수 있는 것다른 사람개발현장을 방문하여 제작현장에 가기 전 의견을 들어보세요.
내가 해야 할 일은 그들에게 새로운 IP 주소와 도메인 이름을 알려주는 것뿐입니다. 물론 그들은 /etc/hosts
자신의 컴퓨터에서 다음과 같은 방식으로 편집할 것 [new-ip-address-no-brackets-pls] example.com www.example.com
입니다. 브라우저에서 검색 데이터를 지운 다음 배포된 개발 사이트를 볼 수 있습니다. 다른 모든 세계는 동일한 사이트를 원래 상태로 보는 동안 현재 라이브 사이트의 스냅샷은 웹사이트 개발을 위한 정말 멋진 설정입니다!
확실히 이것이 제가 개발을 위해 선호하는 방법이 될 것입니다. 이 방법을 쉽게 이길 수 있는 다른 방법은 없습니다. 누군가 공유하고 싶다면 기쁘겠습니다.
해결책
새 인스턴스에서 새로 제공된 IP 주소에 'IP 주소 변경'을 입력하면 됩니다. -wp-config.php
/etc/mysql/my.cnf
두 곳의 위치host
와bind-address
/etc/ee/ee.conf
하지만 그건 필요하지 않을 수도 있어이제 까다로운 부분은 MySQL 편집을 수행하는 것입니다. 저는 MariaDB를 사용하고 있습니다. 우선, 위에서 모든 교체 작업을 수행한 후에도 이전처럼 mysql에 로그인할 수 없으며, 무슨 일이 있어도(이유는 알 수 없음) 이 새 서버에서 mysql에 로그인할 수 있는 권한이 부여되지 않습니다. 따라서 해결 방법은 시나리오를 절약할 수 있는 localhost로 로깅하는 것입니다.
mysql -u root -h localhost -p
그런 다음 로그인해야 합니다. 일단 로그인하면 모든 데이터베이스 교체를 수행할 수 있습니다 . 예를 들면 users@old-ip-address
다음 과 같습니다.user@new-ip-address
mysql> RENAME USER root@[old-ip-add-without-square-brackets] TO root@[new-ip-address-again-without-square-brackets];
모든 사용자의 IP 주소를 바꾸고 마지막으로 다음을 수행하십시오.
mysql> FLUSH PRIVILEGES;
그런 다음 모든 사이트와 함께 새로 복원된 인스턴스를 볼 수 있었습니다. 사이트가 두 개 이상인 경우 해당 wp-config.php
파일 내에서 IP 주소를 변경해야 한다는 것은 명백합니다. 아래의 다른 모든 대체 항목은 /etc/
사이트와 관련 없이 서버의 중앙에 있습니다.