mysql“root”사용자의 비밀번호를 설정할 수 없습니다


16

우분투를 처음 사용합니다. 우분투 12.10을 실행 중입니다. 아파치, PHP, MySQL을 설치하려고합니다. 그러나 아파치를 설치했으며 완벽하게 실행 중입니다.

sudo apt-get install apache2

그러나 다음 명령을 사용하여 mysql을 설치하려고 할 때

sudo apt-get install mysql-server 

다운로드 후 비밀번호를 요청했지만 비밀번호를 입력하고 확인한 후 다음과 같은 오류 메시지가 나타납니다.

Mysql "root"사용자의 비밀번호를 설정할 수 없습니다

mysql의 비밀번호를 설정하는 중에 오류가 발생했습니다
계정에 이미 암호가 있거나 Mysql 서버와의 통신 문제로 인해 발생했을 수 있습니다.
패키지 설치 후 계정 비밀번호를 확인해야합니다.
자세한 정보는 /usr/share/doc/mysql-server-5.5/README.Debian 파일을 읽으십시오.

프롬프트에서 확인 버튼을 클릭 한 후 터미널에서 다음 메시지가 나타납니다.

Setting up mysql-server-5.5 (5.5.29-0ubuntu0.12.10.1) ...
start: Job failed to start
invoke-rc.d: initscript mysql, action "start" failed.
dpkg: error processing mysql-server-5.5 (--configure):
subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
mysql-server-5.5
E: Sub-process /usr/bin/dpkg returned an error code (1)

MySQL 오류 로그 말한다

130209 14:26:37 [Note] Plugin 'FEDERATED' is disabled.
130209 14:26:37 InnoDB: The InnoDB memory heap is disabled
130209 14:26:37 InnoDB: Mutexes and rw_locks use GCC atomic builtins
130209 14:26:37 InnoDB: Compressed tables use zlib 1.2.7
130209 14:26:37 InnoDB: Using Linux native AIO
mysqld: Can't create/write to file '/tmp/ibNuz7q0' (Errcode: 13)
130209 14:26:37  InnoDB: Error: unable to create temporary file; errno: 13
130209 14:26:37 [ERROR] Plugin 'InnoDB' init function returned error.
130209 14:26:37 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
130209 14:26:37 [ERROR] Unknown/unsupported storage engine: InnoDB
130209 14:26:37 [ERROR] Aborting

이 문제를 검색했지만 아무것도 효과가 없었습니다. 도와주세요.


1
mysql-server를 실행하여 이미 설치 했는지 확인하십시오 ps -e | grep mysqld. 출력이 이미 설치되어 있음을 나타내는 경우
green

나는 이것에 대한 출력을 받고 있지 않다
Devendra 베르

게시 한 mysql 오류가에 문제가 있음을 나타낼 수 있습니다 /etc/mysql/my.cnf. 해당 파일 또는 / etc / mysql 디렉토리의 파일을 수정 한 경우 원본을 복원하고 다시 시도하십시오.
Richard Ayotte

Nathan, 나는이 게시물에서 같은 문제에 직면하고 있으며 이미 green7 게시 및 귀하의 지침과 동일한 지침을 따랐습니다. 왜 mysql이 작동을 멈췄는지 이해할 수 없습니다. 도움을 더 주시면 기쁠 것입니다. 편집 : mysql을 설치하려고 할 때 다음 메시지가 수신되지 않기 때문에 모든 일이 발생했음을 알려드립니다. 오류 : 1146 'mysql.user'테이블이 없습니다. 미리 감사드립니다.

평판이 낮아 답변을 할 수 없습니다. 이 요점은 나를 위해 작동 gist.github.com/ervinb/63138a504da11a9c27af
gayavat

답변:


25

여기에 동일한 루트 암호 설정 문제가 있는데, 이전에 mysql 서버 5.6을 수동으로 설치하지 못했기 때문일 수 있습니다. 철저한 mysql 제거는 쉬운 일이 아닙니다. 몇 시간 동안 제거 / 다시 설치 한 다음 마침내 해결했습니다.

sudo dpkg --purge mysql-client-core-5.5 # or alternative version
sudo dpkg --purge mysql-client
sudo dpkg --purge mysql-server-core-5.5 # or alternative version
sudo dpkg --purge mysql-common

기본적으로 난 그냥 입력

sudo dpkg --purge mysql # followed by two tabs

그런 다음 --purge터미널이 자동 완성되는 모든 패키지. mysql-common일부 종속성 문제로 인해 마지막으로 제거하십시오 .

위의 dpkg명령 외에도

sudo apt-get --purge remove mysql-server
sudo apt-get --purge remove mysql-client
sudo apt-get --purge remove mysql-common
sudo apt-get autoremove
sudo apt-get autoclean

또한 Greq의 방법을 시도했습니다

sudo rm -rf /etc/mysql

/ var / lib에서 mysql 폴더를 제거하십시오

sudo rm -rf /var/lib/mysql/

이 시점에서 mysql이 완전히 제거되었는지 확인하려면

which mysql
mysql --version

첫 번째는 폴더 대신 출력을 반환하지 않아야합니다. 두 번째는 mysql이 버전 번호 대신 설치되어 있지 않음을 반환해야합니다. 그렇지 않으면 제거가 여전히 불완전합니다.

의 중요성은 dpkg --purge사용할 때, apt-get혼자, which mysql그리고 mysql --versionMySQL을 같이 행동은 여전히 존재한다.

다시 설치하기 전에 dpkg를 다시 구성하고 업데이트하십시오.

sudo dpkg --configure -a
sudo apt-get update

마침내 문제가 해결되었습니다. 다른 사람들에게 도움이되기를 바랍니다.


3
필자의 경우 : sudo dpkg --purge mysql-common 다음과 함께 실패합니다. dpkg : 종속성 문제가 mysql-common 제거를 방지합니다. 2). libmysqlclient18은 mysql-common (> = 5.5.35-0ubuntu0.12.04.2)에 의존합니다. dpkg : 오류 처리 mysql-common (-퍼지) : 종속성 문제-제거하지 않음 처리하는 동안 오류가 발생했습니다 : mysql-common
ses

이것은 또한 나를 위해 일했습니다.
Michael Lindman

나는 상황을 완전히 해결할 수있는 일련의 지침을 찾기 위해 한동안 찾고 있습니다. 이것은 설명대로 작동했습니다. 감사.
매트 세터

고마워요! 리눅스가 파일 배치와 같은 지저분한 작업을하는 것은 유감입니다!
southerton

결국 나를 위해 일했다. 결국 재부팅이 필요하다고 생각합니다.
Danimal

5

mysql을 완전히 제거해야합니다. 날 믿어 봐 dpkg는 이것을 혼자하지 않습니다.

보다

/programming/10853004/removing-mysql-5-5-completely

급한 경우

sudo service mysql stop  #or mysqld
sudo killall -9 mysql
sudo killall -9 mysqld
sudo apt-get remove --purge mysql-server mysql-client mysql-common
sudo apt-get autoremove
sudo apt-get autoclean
sudo deluser mysql
sudo rm -rf /var/lib/mysql
sudo apt-get purge mysql-server-core-5.5
sudo apt-get purge mysql-client-core-5.5

당신은 영웅입니다! 나는 인터넷 검색을하고 여러 곳에서 다른 조언을 시도해 보았지만 실제로 당신의 조언만이 효과가있었습니다! 나는 이미 다른 옵션을 대부분 시도했지만 mysql 사용자를 삭제하는 것의 차이점이 있다고 생각합니다. 추신 : 명령을 성공적으로 kill -9실행하기 전에 여러 프로세스가 필요 deluser mysql했습니다.
Shautieh

3

그 이유는 줄에 표시된 것처럼 디렉토리 mysql에 액세스 할 수 없기 때문이라고 생각합니다./tmp/

mysqld : 파일 '/ tmp / ibNuz7q0'을 만들거나 쓸 수 없습니다 (오류 코드 : 13)

터미널에서 다음 명령을 실행하십시오.

수도
chown 루트 : root / tmp
chmod 1777 / tmp
/ usr / sbin / mysqld &

설명 :

  • sudo su:로 다음 명령을 실행합니다 root.
  • chown root:root /tmp: 그룹 의 사용자 rootroot의 소유자로 만드십시오 /tmp.
  • chmod 1777 /tmp: /tmp모든 사용자가 액세스 할 수 있도록 권한을 변경하고 소유자 만 root해당 디렉토리의 파일을 삭제할 수 있습니다. (파일 권한에 대한 자세한 내용은 여기 )
  • /usr/sbin/mysqld &: mysqld데몬을 시작하십시오 .

마지막 명령을 입력 한 후 내가 bash는 시작 mysqld이이 메시지 번호의 /etc/init.d에 무엇입니까 : /etc/init.d에 :있는 디렉토리
Devendra 베르

답변 수정
green

/ usr / sbin / mysqld & / usr / sbin / mysqld & [1] 3497 후에이 출력이 표시됩니다. mysql이 실행 중인지 확인하는 방법
Devendra Verma

mysql이 실행 중인지 확인하려면 실행 ps -e | grep mysqld하고 출력이 있으면 정상적으로 실행됩니다.
green

감사 @ green7 여기에 출력 ps -e | grep mysqld 1075? 00:00:04 mysqld
Devendra Verma

2

나는 지난 밤에 몇 시간 동안 이것으로 씨름했고, 구글이 그 문제에 관해 가지고있는 모든 것을 읽었다.

mysql을 20 번 다시 설치했습니다. 아마도 문자 그대로 일 것입니다.

마지막으로, 이들 중 하나 또는 둘 다가 문제를 해결했습니다 (mysql을 제거 / 제거 / 굽기 후).

  1. sudo rm -rf /etc/mysql (퍼지 후 제거되지 않았습니다)
  2. 그런 다음 서버를 종료하고 내 VM 인스턴스의 크기를 512MB에서 1GB (RAM)로 조정했습니다.

그 후, 나는 달렸고 sudo aptitude install mysql-server마침내 성공적으로 설치되었습니다.

$ sudo aptitude install mysql-server
[sudo] password for [REDACTED]: 
The following NEW packages will be installed:
  libdbd-mysql-perl{a} libmysqlclient18{a} mysql-client-5.5{a} mysql-common{a} mysql-server mysql-server-5.5{a} mysql-server-core-5.5{a} 
0 packages upgraded, 7 newly installed, 0 to remove and 0 not upgraded.
Need to get 8,589 kB of archives. After unpacking 94.6 MB will be used.
Do you want to continue? [Y/n/?] Y
Get: 1 http://ftp.us.debian.org/debian/ wheezy/main mysql-common all 5.5.31+dfsg-0+wheezy1 [85.3 kB]
Get: 2 http://ftp.us.debian.org/debian/ wheezy/main libmysqlclient18 amd64 5.5.31+dfsg-0+wheezy1 [687 kB]
Get: 3 http://ftp.us.debian.org/debian/ wheezy/main libdbd-mysql-perl amd64 4.021-1+b1 [126 kB]
Get: 4 http://ftp.us.debian.org/debian/ wheezy/main mysql-client-5.5 amd64 5.5.31+dfsg-0+wheezy1 [1,923 kB]
Get: 5 http://ftp.us.debian.org/debian/ wheezy/main mysql-server-core-5.5 amd64 5.5.31+dfsg-0+wheezy1 [3,784 kB]
Get: 6 http://ftp.us.debian.org/debian/ wheezy/main mysql-server-5.5 amd64 5.5.31+dfsg-0+wheezy1 [1,900 kB]
Get: 7 http://ftp.us.debian.org/debian/ wheezy/main mysql-server all 5.5.31+dfsg-0+wheezy1 [83.6 kB]
Fetched 8,589 kB in 2s (3,068 kB/s)
Preconfiguring packages ...
Selecting previously unselected package mysql-common.
(Reading database ... 52430 files and directories currently installed.)
Unpacking mysql-common (from .../mysql-common_5.5.31+dfsg-0+wheezy1_all.deb) ...
Selecting previously unselected package libmysqlclient18:amd64.
Unpacking libmysqlclient18:amd64 (from .../libmysqlclient18_5.5.31+dfsg-0+wheezy1_amd64.deb) ...
Selecting previously unselected package libdbd-mysql-perl.
Unpacking libdbd-mysql-perl (from .../libdbd-mysql-perl_4.021-1+b1_amd64.deb) ...
Selecting previously unselected package mysql-client-5.5.
Unpacking mysql-client-5.5 (from .../mysql-client-5.5_5.5.31+dfsg-0+wheezy1_amd64.deb) ...
Selecting previously unselected package mysql-server-core-5.5.
Unpacking mysql-server-core-5.5 (from .../mysql-server-core-5.5_5.5.31+dfsg-0+wheezy1_amd64.deb) ...
Processing triggers for man-db ...
Setting up mysql-common (5.5.31+dfsg-0+wheezy1) ...
Selecting previously unselected package mysql-server-5.5.
(Reading database ... 52616 files and directories currently installed.)
Unpacking mysql-server-5.5 (from .../mysql-server-5.5_5.5.31+dfsg-0+wheezy1_amd64.deb) ...
Selecting previously unselected package mysql-server.
Unpacking mysql-server (from .../mysql-server_5.5.31+dfsg-0+wheezy1_all.deb) ...
Processing triggers for man-db ...
Setting up libmysqlclient18:amd64 (5.5.31+dfsg-0+wheezy1) ...
Setting up libdbd-mysql-perl (4.021-1+b1) ...
Setting up mysql-client-5.5 (5.5.31+dfsg-0+wheezy1) ...
Setting up mysql-server-core-5.5 (5.5.31+dfsg-0+wheezy1) ...
Setting up mysql-server-5.5 (5.5.31+dfsg-0+wheezy1) ...
Stopping MySQL database server: mysqld.
131124 15:39:56 [Note] Plugin 'FEDERATED' is disabled.
131124 15:39:56 InnoDB: The InnoDB memory heap is disabled
131124 15:39:56 InnoDB: Mutexes and rw_locks use GCC atomic builtins
131124 15:39:56 InnoDB: Compressed tables use zlib 1.2.7
131124 15:39:56 InnoDB: Using Linux native AIO
131124 15:39:56 InnoDB: Initializing buffer pool, size = 128.0M
131124 15:39:56 InnoDB: Completed initialization of buffer pool
131124 15:39:56 InnoDB: highest supported file format is Barracuda.
131124 15:39:56  InnoDB: Waiting for the background threads to start
131124 15:39:57 InnoDB: 5.5.31 started; log sequence number 1595675
131124 15:39:57  InnoDB: Starting shutdown...
131124 15:39:58  InnoDB: Shutdown completed; log sequence number 1595675
Starting MySQL database server: mysqld ..
Checking for tables which need an upgrade, are corrupt or were 
not closed cleanly..
Setting up mysql-server (5.5.31+dfsg-0+wheezy1) ...

1

입력 sudo apt-get purge mysql-server && sudo apt-get install mysql-server문제가 해결되지 않는 경우에 나의 대답에 코멘트를 남겨 나는이 문제를 해결하기 위해 함께 작동합니다 바랍니다.


0

12.04 이후의 모든 Ubuntu 버전에 대한 설치 스크립트는 12.04와 동일한 설정 프로세스를 따르지 않습니다. 12.04에서는 설치 중에 mysql 비밀번호를 명시 적으로 설정하라는 메시지가 표시됩니다. 12.10 이후에는 단순히 mysql 루트 암호를 요청하지만 그 암호는 무엇입니까? 설치 스크립트는 한 단계 뒤로 이동합니다. 가상 머신에 12.04를 설치하고 거기에 mysql을 설치하는 것이 좋습니다. 당신이 나와 같고 Drupal과 함께 이것을 사용한다면 분명히 12.04를 고수합니다.


0

여전히 문제가있는 사람들을위한 다른 솔루션. 잘하면 MySQL을 다시 설치하려는 사람들을 도울 수 있기를 바랍니다. 그것은 탐색 및 파괴 임무입니다. 따라서 피곤합니다. 당신의 뿌리를 가정 :

apt-get purge mysql*
apt-get purge dbconfig-common #the screen used for mysql password
find / -name *mysql*          #delete any traces of mysql
#insert apt-get cleanups, autoremove,updates etc.

원래 남은 것이 mysqlserver-5.5의 시작을 방해하고있었습니다. 이 명령은 결국 문제를 해결했습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.