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: 그룹 의 사용자 root를 root의 소유자로 만드십시오 /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.