2012-04-26 9 views
-1

우분투 10.10에서 새로 설치 한 mySQL 서버 복사본에 심각한 문제가 있습니다. 나는 apt와 함께 설치하고 그 당시 암호를 제공했다. 설치가 잘되었지만 서버가 매우 이상하게 작동합니다. 데이터베이스를 테스트 할 수우분투 10.10의 이상한 mySQL 동작

첫째, 나는 myPassword가 설치 중에, 물었을 때 내가 입력 한 하나입니다

mysql_connect("localhost", "root", "myPassword") or die(mysql_error()); 

으로 PHP 파일을 만들었습니다. 액세스가 거부되었습니다. 필자가 읽은 솔루션을 추구하기 위해 mySQL 서버로 셸을 만들려고했습니다. 일반적인 구문 작동하지 않았고, 아무 것도 얻을 수 있지만, "액세스 거부"로, 내가 대신 MySQL의 쉘, 그러나

mysql -u root password myPassword 

을해야했다, 그것은 단지 매개 변수와 변수의 목록을 뱉어. 그래서이 시점에서 나는 혼란 스럽습니다. 2 년 후에 명령 줄을 통해 mySQL을 사용하지는 못했지만이 동작은 익숙하지 않으며 서버와 상호 작용할 수있는 방법을 찾을 수 없습니다.

도움을 주시면 감사하겠습니다.

답변

2

암호를 제공하기위한 mysql 명령 줄 매개 변수는 이 아니라 -p입니다. 또한 공간을 남겨 두어야합니다. 예를 들어 :

mysql -uroot -pmyPassword 

당신이 노출되는 비밀번호 위험을 감수하지 않으려는 경우

...

mysql -uroot -p 

은 ... 당신의 암호를 입력하라는 메시지를 표시하고 당신이 그들을 입력 문자를 숨 깁니다.

+0

제가 이상한 것으로 지적한 것은 '-uroot'또는 '-u root'를 사용했는지 여부에 관계없이 -p 매개 변수를 사용하면 액세스 거부 오류가 발생한다는 것입니다. 이것은 부분적으로는 "이상한 행동"이 의미하는 바입니다. – dlwiest

0

apparmor가 설치되어 있으면 (기본값) 우분투가 정의한 기본 설정을 벗어날 때 문제가 발생할 수 있습니다. MySQL이 정의된다 터치 허용되는

것들 : /etc/apparmor.d/abstractions/mysql

당신이 다른 곳에 소켓 파일을 넣어 한 경우는 액세스 거부 메시지를받을 것입니다.

strace -e file mysql <blah blah> 

이 표준 에러에 모든 시스템 수준의 파일 작업을 인쇄합니다 :

지금처럼 mysql 클라이언트를 실행, 더 밀접하게 사물을 찾으십시오. 그런 다음 사용 권한 오류의 원인이되는 조작을 정확히 볼 수 있습니다. 문제가없는 경우 네트워크 작업을 보려면 -e network을 대신 사용할 수 있습니다.