Workbench를 사용하여 Django를 원격 MySQL 데이터베이스에 연결

별로

PythonAnywhere에서 웹 사이트를 호스팅하고 있습니다.

서비스에 두 개의 데이터베이스가 있습니다. myusername$productionmyusername$dev.

프로덕션 DB는 매일 밤 자체 백업하고 최신 라이브 데이터 배치로 dev 데이터베이스를로드합니다. 유료 PythonAnywhere 고객 인 ssh를 통해 Django 개발 환경을 dev 데이터베이스에 연결하려고합니다.

나는 그들의 조언에 따라 MySQL Workbench를 다운로드했다. MySQL Workbench는 아무런 문제없이 데이터베이스에 연결된다. 그런 다음 dev.pyDjango에서 다음과 같이 설정 을 시도했습니다 .

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql', 
        'NAME': 'myusername$dev',
        'USER': 'myusername',
        'PASSWORD': 'mypassword',
        'HOST': '127.0.0.1',
        'PORT': '3306',
    }
}

그러나 이로 인해 django.db.utils.OperationalError: (2003, "Can't connect to MySQL server on '127.0.0.1' (10061)")오류가 발생합니다. 또한 교체 시도 127.0.0.1localhost하지만 둘 다 일 이들뿐만 아니라 모두 호스트와 포트 빈을 떠나.

그런 다음 웹 사이트에서 다른 두 가지 옵션을 시도했습니다. 즉, Python 코드를 통해 직접 db에 액세스하고 Putty (저는 Windows 10 사용자입니다)를 사용했지만 이들 중 아무것도 작동하지 않았습니다.

어떤 조언이라도 대단히 감사하겠습니다.

자일스 토마스

여기에 PythonAnywhere 개발자. 링크하는 도움말 페이지 에는 외부에서 PythonAnywhere MySQL 데이터베이스에 연결하기위한 여러 가지 옵션이 있습니다. 당신이-또는 적어도 처음에는-첫 번째와 두 번째 두 가지를 혼동하는 것처럼 들립니다.

첫 번째는 MySQL Workbench를 사용하는 것입니다. MySQL Workbench에는 공용 인터넷에서 직접 액세스 할 수없는 데이터베이스에 연결할 수 있도록 SSH 터널을 설정하는 옵션이 있습니다. 하지만 터널을 설정 한 후에는 MySQL Workbench 내에서 작업을 실행하는 경우에만 도움이됩니다. 머신에서 실행중인 다른 코드에는 영향을주지 않습니다. 따라서 Django 코드에는 도움이되지 않습니다.

두 번째 옵션은 Python 코드에서 데이터베이스에 연결하려는 경우입니다. 데이터베이스 연결이 만들어지는시기를 완전히 제어 할 수있는 SSHTunnelForwarder경우 SQL 코드 주위 래퍼를 배치 할 수 있으며 해당 with내에서 수행하는 모든 SQL 코드 는 데이터베이스에 연결할 수 있지만 해당 문 외부의 코드는 연결할 수 없습니다. . 따라서 Django를 사용할 때도 도움이되지 않습니다. MySQL 코드가 Django 라이브러리 내부 깊숙이 숨겨져 있고 with명령문으로 래핑하는 것은 매우 까다로울 수 있기 때문입니다.

세 번째 옵션은 SSH 터널을 수동으로 설정하는 것이지만 안타깝게도 지침은 유닉스 환경을 대상으로합니다. Linux 또는 Mac. 그렇게하면 연결을 허용하는 로컬 머신 (IP 주소 127.0.0.1, 포트 3306)에서 서버를 시작한 다음 SSH를 통해 전달하여 Pythonanywhere 방화벽 내부로 나오고 올바른 서버로 전송됩니다. MySQL 서버. 이것은 로컬 서버가 실제로 작업을 PythonAnywhere 시스템에 전달하는 것임에도 불구하고 마치 MySQL 서버 인 것처럼 시스템에서 코드를 작성한다는 것을 의미합니다.

그래서 당신이해야 할 일은 (그리고 거의 다 된 것처럼 보입니다!) Unix 명령이 ssh명령 으로하는 일을하도록 PuTTY를 설정하는 것이 었습니다 . 이 지침 은 거의 여러분이 원하는 것입니다. 차이점은

  • "SSH 게이트웨이"는 ssh.pythonanywhere.com
  • "소스 포트"는 3306입니다.
  • PythonAnywhere MySQL 데이터베이스 호스트 이름에 대한 "대상 주소"( "데이터베이스"탭에서) 뒤에 :3306.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

노드를 사용하여 원격 mysql 데이터베이스에 연결

분류에서Dev

MySQLWorkbench를 사용하여 (원격) MySQL 데이터베이스에 연결하는 데 문제가 있습니다.

분류에서Dev

Mac에서 MySQL Workbench를 사용하여 원격 서버에 연결할 수 없습니다.

분류에서Dev

PHP (xampp / mysql)를 사용하여 특정 데이터베이스에 연결

분류에서Dev

CoreData를 사용하여 원격 검색 결과를 로컬 데이터베이스와 연결

분류에서Dev

원격 시스템에서 mysql 데이터베이스를 사용하는 pyspark

분류에서Dev

jsp를 사용하여 원격 MS-SQL 데이터베이스를 연결하는 방법

분류에서Dev

JDBC를 사용하여 원격 MySQL (호스트 게이터) 서버에 연결할 때 오류 발생

분류에서Dev

ssh를 사용하여 작업중인 원격 호스트 데이터베이스 연결이지만 laravel 5를 사용하여 연결할 수 없음

분류에서Dev

instantclient_11_2 및 VBScript를 사용하여 Oracle 원격 데이터베이스 연결

분류에서Dev

Java를 통해 원격 데이터베이스에 연결

분류에서Dev

PHP를 사용하여 MySQL 데이터베이스에 연결 클래스, 삽입, 업데이트, 삭제

분류에서Dev

mysql 워크 벤치를 원격 데이터베이스에 연결할 수 없습니다.

분류에서Dev

원격 자바와 오라클 데이터베이스를 연결하는

분류에서Dev

Django 1.10.6에서 MySQL 데이터베이스를 연결하는 방법

분류에서Dev

Spark를 사용하는 원격 MySQL 데이터베이스 액세스 오류

분류에서Dev

localhost없이 Java를 사용하여 MySQL 데이터베이스에 연결하는 방법

분류에서Dev

psycopg2를 사용하여 원격 호스트에서 postgres 데이터베이스에 연결할 수 없습니까?

분류에서Dev

XAMPP를 사용하여 데이터베이스에 연결

분류에서Dev

알려진 양호한 온라인 오픈 데이터베이스를 사용한 MySQL Workbench 테스트 연결

분류에서Dev

쉘 스크립트를 사용하여 mysql 데이터베이스에 연결할 수 없습니다.

분류에서Dev

CLI를 사용하여 원격 DB2 LUW 데이터베이스에 연결하는 방법은 무엇입니까?

분류에서Dev

PHP를 사용하여 Swift에서 온라인 데이터베이스 (mySQL)에 연결합니다. (XCODE)

분류에서Dev

Java를 사용하여 VM에서 mysql 데이터베이스에 연결할 수 없습니다.

분류에서Dev

SSH 터널링을 사용하여 원격 MySQL 데이터베이스를 호출 할 수 없습니다.

분류에서Dev

생산 Laravel 증기를 사용하여 MySQL 데이터베이스에 연결할 수 없습니다

분류에서Dev

Express JS를 사용하여 AWS RDS MySQL 데이터베이스에 연결할 수 없음

분류에서Dev

socket.io를 사용하여 소켓으로 mysql 데이터베이스에 연결할 때 오류

분류에서Dev

PHP mysqli_connect ()를 사용하여 MySQL 데이터베이스에 연결할 수 없습니다.

Related 관련 기사

  1. 1

    노드를 사용하여 원격 mysql 데이터베이스에 연결

  2. 2

    MySQLWorkbench를 사용하여 (원격) MySQL 데이터베이스에 연결하는 데 문제가 있습니다.

  3. 3

    Mac에서 MySQL Workbench를 사용하여 원격 서버에 연결할 수 없습니다.

  4. 4

    PHP (xampp / mysql)를 사용하여 특정 데이터베이스에 연결

  5. 5

    CoreData를 사용하여 원격 검색 결과를 로컬 데이터베이스와 연결

  6. 6

    원격 시스템에서 mysql 데이터베이스를 사용하는 pyspark

  7. 7

    jsp를 사용하여 원격 MS-SQL 데이터베이스를 연결하는 방법

  8. 8

    JDBC를 사용하여 원격 MySQL (호스트 게이터) 서버에 연결할 때 오류 발생

  9. 9

    ssh를 사용하여 작업중인 원격 호스트 데이터베이스 연결이지만 laravel 5를 사용하여 연결할 수 없음

  10. 10

    instantclient_11_2 및 VBScript를 사용하여 Oracle 원격 데이터베이스 연결

  11. 11

    Java를 통해 원격 데이터베이스에 연결

  12. 12

    PHP를 사용하여 MySQL 데이터베이스에 연결 클래스, 삽입, 업데이트, 삭제

  13. 13

    mysql 워크 벤치를 원격 데이터베이스에 연결할 수 없습니다.

  14. 14

    원격 자바와 오라클 데이터베이스를 연결하는

  15. 15

    Django 1.10.6에서 MySQL 데이터베이스를 연결하는 방법

  16. 16

    Spark를 사용하는 원격 MySQL 데이터베이스 액세스 오류

  17. 17

    localhost없이 Java를 사용하여 MySQL 데이터베이스에 연결하는 방법

  18. 18

    psycopg2를 사용하여 원격 호스트에서 postgres 데이터베이스에 연결할 수 없습니까?

  19. 19

    XAMPP를 사용하여 데이터베이스에 연결

  20. 20

    알려진 양호한 온라인 오픈 데이터베이스를 사용한 MySQL Workbench 테스트 연결

  21. 21

    쉘 스크립트를 사용하여 mysql 데이터베이스에 연결할 수 없습니다.

  22. 22

    CLI를 사용하여 원격 DB2 LUW 데이터베이스에 연결하는 방법은 무엇입니까?

  23. 23

    PHP를 사용하여 Swift에서 온라인 데이터베이스 (mySQL)에 연결합니다. (XCODE)

  24. 24

    Java를 사용하여 VM에서 mysql 데이터베이스에 연결할 수 없습니다.

  25. 25

    SSH 터널링을 사용하여 원격 MySQL 데이터베이스를 호출 할 수 없습니다.

  26. 26

    생산 Laravel 증기를 사용하여 MySQL 데이터베이스에 연결할 수 없습니다

  27. 27

    Express JS를 사용하여 AWS RDS MySQL 데이터베이스에 연결할 수 없음

  28. 28

    socket.io를 사용하여 소켓으로 mysql 데이터베이스에 연결할 때 오류

  29. 29

    PHP mysqli_connect ()를 사용하여 MySQL 데이터베이스에 연결할 수 없습니다.

뜨겁다태그

보관