2012-07-14 5 views
1

MySQL-python 패키지를 사용하고 있습니다.MySQL-python이 CGI에서 실행되지 않습니다

A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. 
/var/www/html/temp.py in() 
9 
10 # Establich a connection 
11 db = MySQLdb.connection(host="127.0.0.1", user="root", passwd="", db="inserv") 
12 
13 # Run a MySQL query from Python and get the result set 
    db undefined, MySQLdb = <module 'MySQLdb' from 
    '/usr/lib64/python2.6/site-packages 
/MySQLdb/__init__.pyc'>, MySQLdb.connection = <type '_mysql.connection'>, 
host undefined, user undefined, passwd undefined 

<class '_mysql_exceptions.OperationalError'>: 
(2003, "Can't connect to MySQL server on '127.0.0.1' (13)") 
    args = (2003, "Can't connect to MySQL server on '127.0.0.1' (13)") 
    message = '' 

나는 지난 몇 일 동안이 상황에 갇혀있다 : 나는 그러나 같은 통해 브라우저를하고, 명령 줄에서 MySQL을 따라 스크립트를 실행할 수 있어요 (아파치 CGI는) 다음과 같은 오류를 얻을 수 있습니다. PHP 기반 사이트를 통해 발행 된 MySQL 명령은 적절하게 실행되며 명령 줄에서 MySQL에 로그인 할 수도 있습니다. 이 문제는 Python CGI에서만 발생합니다.

나는 또한 oursql 패키지와 동일한 시도했지만 비슷한 문제가있는 것으로 보입니다. 이 상황을 어떻게 해결할 수 있습니까?

편집
실제의 대답 @를 당으로 나는 MySQLdb.connect()를 사용하려면 코드를 편집 한하지만 문제가 계속 지속 및 역 추적이로 끝나는 : 당신은 연결 사용해야

2003, "Can't connect to MySQL server on '127.0.0.1' (13)" 

답변

1

하지 연결. Mysqldb.connect()는 연결 객체를 반환하지만 당신은 mysqldb.connection()을 호출하는 것처럼 보입니다. 방법에 대한 예는 The docs을 참조하십시오.

+0

답변에 따라 코드가 변경되었지만 문제가 지속됩니다. (나는 질문을 업데이트했다) – WeaklyTyped

+1

아마도 MySQL 로그를 봐라. 또한 MySQL이 로컬 호스트의 TCP 포트를 실제로 듣고 있는지 확인합니다. 다른 스크립트가 TCP 연결 대신 UNIX 소켓을 사용하는 것이 가능합니다. –

+0

소켓을 통한 연결 (127.0.0.1 대신 로컬 호스트 사용)은 CGI 스크립트에서 작동하지만 SqlALchemy create_engine으로는 실패합니다. – WeaklyTyped

관련 문제