2010-07-17 3 views
0

그래서 연결할 수 있습니다촉매 연결할 수없는하지만

mysql -u username -p -h db.dbhostname.com dbname 

(분명 나는 모든 실수 값을 대체)하지만 Catalyt의 생성 스크립트를 실행할 때 나는

$ ./script/dasgift_create.pl model DB \ 
    DBIC::Schema MyApp::Schema create=static \ 
    components=TimeStamp \ 
    dbi:mysql:dbname:db.dbhostname.com username [email protected] 
DBIx::Class::Schema::Loader::make_schema_at(): 
DBI Connection failed: 
DBI connect('dbname:db.dbhostname.com','username',...) failed: 
Access denied for user 'username'@'whereiam.com' (using password: YES) 
at /opt/local/lib/perl5/site_perl/5.8.9/DBIx/Class/Storage/DBI.pm line 1104 

를 얻을 수 DB 서버와 같이 동작하면 whereiam.com에서 연결을 허용하지 않지만 명령 줄을 통해 정상적으로 연결할 수 있으며 일시적으로 연결이 끊어지지 않고 데이터베이스를 열어 보려고했지만 성공하지 못했습니다. 내가 제공 할 수있는 정보가 조금이라도 유감 스럽지만, 그게 전부예요.

답변

1

불편을 끼쳐 드려 죄송합니다. 나는 바보 같아. 내 암호에는 달러 기호가 있었고 따옴표로 묶지 않아도되므로 기본적으로 환경 변수를 확장하려고하는 암호를 자르고있었습니다. 그것을 인용하면 문제가 제대로 해결됩니다. 귀하의 응답 홉스 주셔서 다시 한번 감사드립니다. 원래 연결 문자열도 작동합니다.

+0

충분히 재미있게도 필자는 "안전을 위해"예제에서 사용자 이름과 암호를 작은 따옴표로 묶어 넣었지만 "푯말에는 괄호 안에 인용 부호가 필요하지 않습니다 ..."라고 말했지만 그렇게하지 않았습니다. 오 잘, 그것을 듣기 때문에 기쁘다 간단한 감시 및 사악한 벌레가 아니다. – hobbs

+0

답변을 수락하는 것을 잊지 마십시오. – xenoterracide

+0

내 자신의 대답을 받아 들일 수 있기까지 약간의 대기 기간이 있습니다 .... 23 시간 남았습니다. – Felix

1

mysql DSN이 그런 식으로 작동하지 않는다고 생각합니다. 로 스크립트를 실행 해보십시오 :

./script/dasgift_create.pl model DB DBIC::Schema MyApp::Schema \ 
create=static components=TimeStamp \ 
'dbi:mysql:database=dbname;host=db.dbhostname.com' \ 
username [email protected] 

(변경된 부분이 바로 DSN되는, 그러나 당신이 원하는 경우에 당신이 그것을 붙여 넣을 수 있도록 내가 당신을 위해 백 슬래시 - 개행 문자로 포맷).

+0

아직 시도하지 않음. 내가 가지고있는 연결 문자열과 새로 제공 한 연결 문자열은 DBI를 사용하는 간단한 10 줄 테스트 스크립트에서 작업하고 간단한 선택을 준비하고 실행합니다. 또한 커맨드 라인에있는 스크립트를 테스트 스크립트에 복사하여 오타를 배제했습니다. 후속 조치를 취해 주셔서 감사합니다. – Felix