MySql 서버 시작 오류 'PID 파일을 업데이트하지 않고 서버가 종료되었습니다'


284

Snow Leopard에서 MySQL을 시작하면 다음 오류가 발생합니다.

PID 파일을 업데이트하지 않고 서버가 종료됩니다

my.cnf

[mysqld]
port            = 3306

socket          = /tmp/mysql.sock

skip-external-locking

key_buffer_size = 16K

pid-file=/var/run/mysqld/mysqld.pid

[mysqld_safe]

log-error=/var/log/mysqld.log

pid-file=/var/run/mysqld/mysqld.pid

7
관리자로 실행 중입니다. sudo /usr/local/mysql/support-files/mysql.server로 시작
Chinmay

6
같은 문제. brew와 함께 mysql을 설치
vrybas

20
여기에 같은 문제가 있습니다. 브루와 함께 설치됩니다.
jspooner

11
이 경우도 내 Mac에서 얻었고 '/usr/local/var/mysql/*.err'와 같은 오류 로그를 제거했습니다.
Mathew P. Jones

3
Mac에서도 같은 오류가 발생했습니다. 그러나 나는 그것을 해결했다. .dmg 파일을 통해 설치 한 경우 시스템 환경 설정으로 이동 한 다음 mysql 아이콘을 클릭 한 다음 mysql 시작 버튼을 클릭하십시오.
Amaranadh Meda

답변:


276

접미사 ".err"로 로그 파일을 찾으려면 자세한 정보가 있어야합니다. 있을 수 있습니다 :

/usr/local/var/mysql/your_computer_name.local.err

권한에 문제가있을 수 있습니다.

  1. mysql 인스턴스가 실행 중인지 확인

    ps -ef | grep mysql

    그렇다면 중지하거나 프로세스를 종료해야합니다.

    -9 PID를 죽입니다

    여기서 PID숫자는 이전 명령의 출력에 사용자 이름 옆에 표시됩니다

  2. 의 소유권을 확인 /usr/local/var/mysql/

    ls -laF / usr / local / var / mysql /

    소유자 인 경우 root변경 mysql하거나your_user

    sudo chown -R mysql / usr / local / var / mysql /


24
내 사용자가 아닌 mysql 사용자에게 질식해야했습니다.
Jared

3
나를 위해 일했다. 오류 파일을 확인하여 파일 사용 권한으로 인한 것이라고 말했습니다. chown 명령을 실행하고 작동했습니다. 감사!!
Packet Tracer

2
sudo chown -R my_user / usr / local / var / mysql /은 적어도 나를 위해 일했다
Bjørn Børresen

내 자신의 경험에서-sudo chown을 마친 후에는 현재 다른 사용자 또는 루트에서 일부 mysql 프로세스가 실행되지 않도록주의하십시오. ps -ef | grep mysql은 실행중인 것이 없는지 확인합니다. 그렇지 않으면 시작할 수 없습니다.
Arthur Frankel

1
총 생명의 은인. 내 유일한 관찰은 mysql 폴더의 파일 경로가 다를 수 있다는 것입니다.
ALisboa

198

의 지침을 따르셨습니까 brew install mysql?

다음을 사용하여 사용자 계정으로 실행할 데이터베이스를 설정하십시오.

mysql 5.x의 경우 :

unset TMPDIR
mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp

다른 폴더에 기본 테이블을 설정하거나 다른 사용자를 사용하여 mysqld를 실행하려면 다음에 대한 도움말을보십시오 mysqld_install_db.

mysql_install_db --help

MySQL 문서를 봅니다.

mysql 8.x의 경우 :

unset TMPDIR
mysqld --initialize-insecure --log-error-verbosity --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp

/usr/local/var/mysql위 의 데이터 디렉토리 가 비어 있는지 확인하고 필요한 경우 백업하십시오.

예를 들어 "mysql"사용자로 실행하려면 다음을 수행해야합니다 sudo.

sudo mysql_install_db ...options...

다음을 사용하여 mysqld를 수동으로 시작하십시오.

mysql.server start

참고 : 이것이 실패하면 아마도 위의 첫 두 단계를 실행하지 않았을 것입니다


78
출력 단계를 수행 한 후에도 동일한 오류가 반복적으로 발생하면 * .pid 파일과 동일한 디렉토리에서 * .err 파일을 삭제하십시오. mahdiyusuf.com/post/21022913180/…
ekillaby 님이

6
나는이 지시를 백만 번 따르려고했지만 결코 작동하지 않았습니다. 나는 의사가 차이를 만들지 않는다고 생각한 이후 의사가 나에게 경고 한 모든 것을 정리하지 않고 "속임수"를 시도했습니다. 결국, 양조 의사의 조언에 따라 위에서 설명한 설정을 실행할 수있게되었습니다. 지나가는 다른 사람에게주는 메모입니다. 양조 의사를 속이려고하지 말고 더 잘 알고 있다고 생각하십시오!
스팬

9
의사를 양조하고 내 사용자에게 쓰기 권한을 추가하면 여전히 많은 문제가 있습니다. sudo chown -R your_user /usr/local/var/mysql/@Tombart의 답변과 마찬가지로 :)
GabLeRoux

1
@countfloortiles 예! 오류 파일을 제거했습니다. :-)
ott--

6
mysqld_install_db명령은 오류를 알려줍니다mysql_install_db: [ERROR] unknown variable 'tmpdir=/tmp'
Snowcrash

125

Mac 컴퓨터에서 동일한 문제가 발생했습니다 (에서 제안한 모든 설치 단계를 올바르게 따르십시오 brew install).

오류 파일을 삭제하면 해결되었습니다.

sudo rm -rf /usr/local/var/mysql/dev.work.err( dev.work내 호스트 이름입니다)

이것은 내 사용자 이름 대신 dev.work.err소유 했기 때문에 효과적 이었습니다 _mysql:wheel. 오류 파일을 확인하면 아마 수정되었을 것입니다.


2
이것은 더 이상 mysql을 다시 부팅 한 후에도 동일한 문제를 발생 시키지만 내 문제를 해결했지만
_mysql

5
이것은 가장 도움이되는 것처럼 보였으며 SUDO 로이 서비스를 시작하지 말고 내 사용자 계정으로 실행해야한다는 것을 깨달았습니다.
Bnjmn

3
이것은 Homebrew를 사용하여 MySQL을 설치 한 사람들에게 아주 좋은 해답입니다
Stephane Paquet

몇 주 동안 다른 일을 시도한 후 오류 파일을 제거하면 모든 것이 작동하기 시작했습니다. 감사합니다
DF

_mysql 계정이 대신했기 때문에 삭제하지 않고 계정으로 다시 가져와야했습니다.
Sammy Larbi

90

재부팅 한 후 동일한 문제가 발생했습니다. 내가 고 쳤던 방법은 다음과 같습니다.

 sudo chown -R _mysql /usr/local/var/mysql

고마워요-권한을 망쳐 놓을 경우를 대비하여 백업하는 것을 잊지 마십시오
m02ph3u5

감사. 우분투에서 Lampp에 문제가있었습니다. 전체 lampp 폴더를 / opt에서 새 서버로 복사했습니다. mysql을 시작하려고 할 때 서버에 PID 파일을 업데이트하지 않고 종료했습니다. lampp / var /로 가서 chown -R mysql mysql /을 실행하십시오.
Dave

6
감사합니다, 당신은 나의 영웅입니다.)
Fareed Alnamrouti

많은 친구 감사합니다! 하루를 구했다!
Masiar

8
El Capitan에서는 다음과 같이 작동했습니다.sudo chown -R _mysql /usr/local/mysql/data
Justin Justin

33

이것은 나를 위해 일했다 ...

실행중인 모든 MySQL 프로세스를 확인하십시오.

$ ps aux | grep mysql

USER     PID    %CPU  %MEM 
_mysql   5970   0.0   0.4 ...

그런 다음 다음을 사용하여 위 명령에서 나열된 모든 프로세스를 종료하십시오.

$ sudo kill -9 [PID]

[PID]위 목록에서 개별 PID로 교체하십시오 ( 예 :) 5970.

첫 번째 명령으로 표시되는 모든 줄에 대해 그렇게하십시오.

그런 다음 MySQL 서버를 다시 시작할 수 있습니다.

mysql.server start

또는 pkill mysql"mysql"과 일치하는 모든 프로세스를 종료 하는 데 사용 합니다 ( -9대부분의 경우 불필요).
bfontaine

특정 ID로 모든 프로세스를 종료하고 다시 시작하는 방법
Anupam Maurya

26

이 오류는 잘못 종료 된 후 msql을 시작하려고 할 때 발생할 수 있습니다.

  1. mysql 오류 로그 파일을 살펴보십시오. 이 같은 것을 언급하는 경우 "이미 동일한 데이터를 사용하여 다른 mysqld를 프로세스를하거나 로그 파일을하지 않는 것이 확인하십시오." 그런 다음 해당 프로세스를 올바르게 종료해야합니다.

  2. mysql이 실행중인 프로세스를 확인하려면 다음 명령을 사용하십시오. lsof -i:3306

출력은 다음과 같아야합니다.

COMMAND  PID    USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
mysqld  4249 username   17u  IPv4 0x7843d9d130469c0b      0t0  TCP localhost:mysql (LISTEN)
  1. mysql을 실행하는 프로세스를 종료하십시오. kill -15 4249

Kill -15는 프로세스에 Siganl을 전송하여 잠금중인 모든 자원을 해제하고 프로세스를 종료합니다.

  1. 이제 mysql은 문제없이 시작해야합니다. mysql.server start

이것은 High Sierra에서 여전히 가치가있는 모든 것을 위해 작동합니다.
Jonathan Stegall

24

내 오류 파일은 다른 프로세스에서 포트를 사용하고 있다고 말했지만 단순히 실행 sudo mysql.server start하면 문제가 해결되었습니다.


그래 ... 이것은 나에게도 효과가 있었고 위의 아무것도 효과가 없었습니다.
Prashant

Mac에서 MySQL을 시작하는 방법은 'sudo /usr/local/mysql/support-files/mysql.server start'인 곳에서 읽은 지침을 따르고있었습니다. "pid 파일을 업데이트하지 않고 서버가 종료됩니다"라는 오류가 발생하여이 페이지에 도착했습니다. 많은 답변을 시도한 후 'sudo mysql.server start'를 찾았으며 작동했습니다. 감사.
rodmclaughlin

19

제거하려고 ib_logfile0하고 ib_logfile1파일을 한 후 다시 MySQL의 실행

rm /usr/local/var/mysql/ib_logfile0
rm /usr/local/var/mysql/ib_logfile1

그것은 나를 위해 작동합니다.


1
나는 또한 .err같은 디렉토리에서 파일을 제거했다 .
Anthony

잘. 이것은 간단하고 실제로 작동합니다. 그러나 제 경우에는 이름을 바꾸는 것만으로ib_log*.bak
mochadwi

18

아무도 도움이되지 않으면 폴더를 제거한 /usr/local/var/mysql다음 mysql을 다시 설치하십시오 brew reinstall mysql.


9
경고는 모든 데이터베이스를 지우는 것을 의미합니다.
22:20에

mysql5.7을 설치하는 것보다 더 높은 버전의 mysql을 설치하면이 문제가 발생합니다. / usr / local / var / mysql을 제거하고 brew reinstall mysql@.57해결하십시오.
페가수스

/ usr / local / var / mysql 아래의 db를 먼저 다른 폴더로 이동하십시오. 설치 후 mysql 서비스를 성공적으로 시작한 후 필요한 db를 다시 이동하십시오.
civic.LiLister

15

최근 에이 문제가 발생했지만 이전에는 작동했지만 중지했습니다.

내가 처음에 시작하기 때문이었다 mysql.server루트 대신 자신의.

수정은 오류 로그 파일 (이 소유 한 파일)을 삭제하는 것 _mysql입니다. 다시 시작하면 통과했습니다.


감사! 나는 한 시간 동안 같은 문제를 겪고 나서 당신의 대답을 발견했습니다.
FLY

11

나를 위해 mysql을 다시 설치해야했습니다.

brew reinstall mysql

그런 다음 아래에서 mysql을 시작하고 로그인시 다시 시작하려면 다음을 수행하십시오.

brew services start mysql

10

나를 위해 일한 솔루션은 여기에 있습니다 : /server/334284/cant-create-pid-file-on-mysql-server-permission-denied

내 권한 중 일부를 변경하면 트릭을 수행하는 것 같습니다. OS X 10.8.2와 함께 2012 년 중반 Macbook Air를 실행하고 있으며 mybrew는 homebrew와 함께 설치되었습니다.

chmod 0755 /var
chown root:wheel /var/tmp
sudo chmod 0771 /usr/local/var/mysql/*

10

나를 위해 수정은 간단했습니다.

top

mysqld가 이미 실행 중임을 보여 주었다

sudo killall mysqld 

그런 다음 프로세스가 시작되도록 허용


8

MacOS X 10.7.5에서 업그레이드를하려고 할 때이 문제가 발생했습니다.

불행히도 mysql은 5.5.14에서 5.6.10으로 업그레이드되었습니다. 새로운 시도, 작동하지 않았다.

나는 이전 설정으로 돌아 가기로 결정하고

brew switch mysql 5.5.14

이것은 문제를 해결하지 못했습니다. 다른 곳에서 나는 이것을 읽고 행했다. 모두 돌아왔다 :)

cd /usr/local/var/mysql
mv ib_logfile0 ib_logfile0.bak
mv ib_logfile1 ib_logfile1.bak

이것은 처음 사용 후 나를 위해 일한 brew upgrade mysql다음과 brew switch mysql 5.7.17내 이전 버전이었다. 기묘한!
Jorge Orpinel

7

사용하고 있습니다

homebrew ( 'brew install mysql')를 사용하여 MySQL을 설치했습니다. 몇 가지 종속성을 설치 한 다음 mysql을 설치했습니다.

시작하려고 할 때

west$ mysql.server start
Starting MySQL
.. ERROR! The server quit without updating PID file (/usr/local/var/mysql/west.local.pid).

나는이 명령을 실행

west$ /usr/local/Cellar/mysql/5.5.25/scripts/mysql_install_db 

MySQL이 작동합니다.

mysql 디렉토리의 최상위 레벨 (예 : usr / local / Cellar / mysql / 5.5.25)에서 mysql_install_db를 실행해야합니다. / scripts 디렉토리 내에서 직접 실행해도 충분한 컨텍스트가 제공되지 않습니다.


5.5.28로 나를 위해 일하고 OSX 10.7.5에서 양조
ch3rryc0ke

7

나를 위해 해결책은 / etc / my / cnf의 데이터 디렉토리를 재정의 / 수정하는 것이 었습니다.

readme 파일에 제공된 지침을 사용하여 소스에서 MySQL 5.5.27을 빌드했습니다.


# Preconfiguration setup
shell> groupadd mysql
shell> useradd -r -g mysql mysql
# Beginning of source-build specific instructions
shell> tar zxvf mysql-VERSION.tar.gz
shell> cd mysql-VERSION
shell> cmake .
shell> make
shell> make install
# End of source-build specific instructions

# Postinstallation setup
shell> cd /usr/local/mysql
shell> chown -R mysql .
shell> chgrp -R mysql .
shell> scripts/mysql_install_db --user=mysql
shell> chown -R root .
shell> chown -R mysql data

# Next command is optional
shell> cp support-files/my-medium.cnf /etc/my.cnf
shell> bin/mysqld_safe --user=mysql &

# Next command is optional
shell> cp support-files/mysql.server /etc/init.d/mysql.server

mysqld_safe는 설명없이 종료되었습니다. 실행 /etc/init.d/mysql.server start하면 오류가 발생했습니다.

"PID 파일을 업데이트하지 않고 서버가 종료되었습니다"

그래도 설치 지침에서 이상한 점을 발견했습니다. 디렉토리 "data"에 대한 소유권이 mysql로 ​​변경되었지만 "var"이 아닌 소유권이 있습니다. var 디렉토리가 mysql 쓰기 가능하다는 것을 보장해야했기 때문에 이것은 드문 일입니다. 그래서 수동으로 실행 chown -R mysql /usr/local/mysql/var한 다음 다시 시작하려고했습니다. 아직 운이 없다. 그러나 더 나쁜 것은 var dir에 .err 파일이 없다는 것입니다. "data"디렉토리에있었습니다! 따라서 scripts / mysql_install_db는 / usr / local / mysql / var에 캠프를 설정하지만 나머지 응용 프로그램은 / usr / local / mysql / data에서 작업을 수행하려는 것 같습니다!

그래서 방금 /etc/my.cnf를 편집하고 [mysqld] 섹션 아래에 mysql의 데이터 디렉토리를 var로 명시 적으로 지시하는 지시문을 추가했습니다 (보통 어떤 방법이든지 기대합니다), 그렇게하면 mysqld가 시작됩니다 좋아. 추가 할 지시문은 다음과 같습니다.

datadir = / usr / local / mysql / var

나를 위해 일했다. 그것이 당신에게 도움이되기를 바랍니다.


5

MySQL 프로세스가 실행 중이므로 포트를 사용할 수 없습니다. 다음 명령을 사용하여 실행중인 MySQL 프로세스를 확인할 수 있습니다.

PS AUXF | grep mysql

MySQL 프로세스가 있으면 kill -9 PID를 사용하여 해당 프로세스 ID를 종료 한 다음 MySQL을 시작하십시오.


이 대답은 나의 구주입니다.
Sangbeom Han

5

안전 모드에서 MySQL을 시작

/usr/local/mysql/bin/mysqld_safe start

또는

MAC 에서 활동 모니터 응용 프로그램에서 하나 mysql이상의 mysqld작업을 종료합니다 .

또는에 의해 오류를 확인

tail -f /usr/local/mysql/data/XXXXX-XXXXX-Pro.local.err

4

오류 로그는 무엇입니까? 이 오류가 발생하여 mysql 오류 로그에 표시된 my.cnf의 오래된 유효하지 않은 설정이되었습니다. 잘못된 구성 설정이 아닌 경우 오류 로그는 최소한 올바른 방향을 가리켜 야합니다.

글쎄, 나는이 시점에서 OP가 그것을 고쳤다 고 가정한다.


4

여기에 게시 된 몇 가지 답변을 통해 문제를 찾을 수있었습니다.

먼저 내가 달린다

sudo -i

그래서 루트 액세스 권한을 가질 수 있습니다.

xxxx.err 파일을 삭제 한 것보다

rm -rf /usr/local/mysql/data/xxxx.err

SafeMode에서 MySQL을 시작한 후

/usr/local/mysql/bin/mysqld_safe start

오류로 인해 시작을 시도하고 종료됩니다 ... 새로운 xxx.err 파일이 생성되며 오류의 원인을 보려면 파일을 읽어야합니다

tail -f /usr/local/mysql/data/mysqld.local.err

제 경우에는 어떤 이유로 폴더 안에 일부 폴더와 파일이 누락되었습니다 /var/log/... 그래서 두 가지를 모두 만들었습니다.

cd /var/log

mkdir mysql

touch mysql-bin.index

새 파일을 만든 후 권한을 변경해야하는 것보다

chown -R _mysql /var/log/mysql

모든 단계를 수행하면 데이터베이스가 즉시 작동하기 시작했습니다 ...

이것이 다른 사람들을 도울 수 있기를 바랍니다 ... 열쇠는 오류를 읽고 기록하고 잘못된 것을 찾는 것입니다 ...


4

제 경우에는 오류 로그 파일의 액세스 문제로 인해 오류가 발생합니다.

다음 두 명령은 문제를 해결하는 데 도움이됩니다.

sudo chown <user> /usr/local/var/mysql/<my-host-name>.err
sudo chmod 666 /usr/local/var/mysql/<my-host-name>.err

3

나는 이것이 당신을 위해 일하기를 바랍니다.

오류 로그를 확인한 후 다음을 발견했습니다.

120309 17:42:49 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data
120309 17:42:50 [Warning] Setting lower_case_table_names=2 because file system for /usr/local/mysql/data/ is case insensitive
120309 17:42:50 [Warning] You need to use --log-bin to make --binlog-format work.
120309 17:42:50 [Note] Plugin 'FEDERATED' is disabled.
120309 17:42:50 InnoDB: The InnoDB memory heap is disabled
120309 17:42:50 InnoDB: Mutexes and rw_locks use GCC atomic builtins
120309 17:42:50 InnoDB: Compressed tables use zlib 1.2.3
120309 17:42:50 InnoDB: Initializing buffer pool, size = 16.0M
120309 17:42:50 InnoDB: Completed initialization of buffer pool
120309 17:42:50  InnoDB: Operating system error number 13 in a file operation.
InnoDB: The error means mysqld does not have the access rights to
InnoDB: the directory.
InnoDB: File name /usr/local/mysql/data/ib_logfile0
InnoDB: File operation call: 'open'.
InnoDB: Cannot continue operation.
120309 17:42:50 mysqld_safe mysqld from pid file /usr/local/mysql/data/lu1s.local.pid ended

그리고 그것을 해결하기 위해 전체 mysql 폴더에 대한 소유권을 부여했습니다.

cd /usr/local
sudo chown mysql mysql
sudo chown mysql mysql-5.5.21-osx10.6-x86_64
sudo chown _mysql mysql
sudo chown _mysql mysql-5.5.21-osx10.6-x86_64

그런 다음 (명령 행으로도 할 수 있음) / usr / local / mysql 에있는 폴더의 "정보 입수"메뉴에서 모든 폴더에 권한을 적용했습니다 (한 번 _mysqlmysql 사용자에게 소유권을 부여한 경우 ). -5.5.21-osx10.6-x86_64 . 별명 일 뿐이므로 별명에 따를 필요가 없습니다.

폴더 이름은 가지고있는 mysql의 설치 버전에 따라 다릅니다.


3

나는 같은 문제가 있었다. 내 /etc/my.cnf 파일을 이동하면 나를 위해 일했습니다. 여기 에 정보가 있습니다


3

같은 문제가 있었으므로 mysqld의 이전 설치를 실행하는 동안 추출 제거를 수행하고있었습니다. brew가 제거하기 전에 서비스를 중지하지 않는 것 같습니다.

.err 파일을 확인한 후 이전 서비스를 종료 한 후 다른 mysql 사본이 실행 중일 수 있다는 기록 된 오류를 보았습니다. 그런 다음 새로운 mysql 설치를 다시 시작할 수있었습니다.


예, 오류 로그를 확인하십시오. 내 경우 ls -latr /usr/local/var/mysql/에는 오류 로그가 포함 된 최신 수정 파일을 찾은 다음 tail -50 name.err구성에서 문제가되는 오류를 확인했습니다.
mahemoff

신 이시여 감사합니다. ps aux | grep mysqld프로세스를 사용 하고 종료했고 kill -9 [proccessid]서버가 성공적으로 시작되었습니다.
Sagish

3

단순한....

2002 MySQL 소켓 오류 수정

어렴풋한 2002 소켓 오류 수정-MySQL이 소켓을 배치하는 위치와 OSX가 생각하는 위치를 연결하고, MySQL은 / ​​tmp에 배치하고 OSX는 / var / mysql에서 소켓을 찾습니다. 소켓은 mysql 클라이언트를 허용하는 파일 유형입니다. / 서버 통신.

sudo mkdir / var / mysql

sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock

잘 했어 : )

이것은 많은 도움이됩니다! 나는이 가이드를 http://coolestguidesontheplanet.com/ 에서 가져 왔습니다 .


3

이 시도..

  1. 문제의 상위 디렉토리로 이동 cd YOURPATH/usr/local/mysql
  2. rm -rf *.local.err (파일 삭제)
  3. touch YOURUSERNAME.local.pid (오류가 발생한 문제가 발생한 새로운 * .local.pid 파일 생성)
  4. 다시 프로젝트로 cd하고 다음을 사용하여 mysql을 다시 시작하십시오. mysql.server start

1
이것은 나를 위해 일했습니다. 이유는 error.log파일이 "_mysql"에 의해 소유되어 로그에 오류가 발생하는 것입니다. 다른 사람 이이 문제를 겪을 수 있도록 기록하고 싶었습니다. 150818 19:32:06 mysqld_safe Logging to '/opt/boxen/log/mysql/error.log'. 150818 19:32:06 mysqld_safe Starting mysqld daemon with databases from /opt/boxen/data/mysql /opt/boxen/homebrew/bin/mysqld_safe: line 129: /opt/boxen/log/mysql/error.log: Permission denied
도노반

문제가 권한과 관련되어 있으면 동일한 mysql 오류가 발생하면 작동하지 않습니다.
mpoletto

나를 위해 일했습니다. 또한 아파치를 다시 시작해야했습니다 (램프 스택을 사용하는 사람들을 위해).
Tommyixi

3

어떻게 든 El Capitan에 대한 권한을 망쳐 놓고 MySQL을 처음부터 다시 설치하기로 결정했습니다.

엘 캐피 탄에서 brew를 사용하고 다시 설치하기로 결정했습니다.

brew uninstall mysql
sudo rm -rf /usr/local/var/mysql
brew install mysql
mysql.server start # ... SUCCESS

새로 설치시 파일 권한이에서 _mysql내 사용자 이름을 포함 하도록 변경되었습니다.

 ls -alh /usr/local/var/mysql
drwxr-xr-x   22 lfender  admin   748B Mar 22 09:58 .
# ... etc

2

드라이브에 여유 공간이 있는지 확인하십시오. 내 드라이브에 공간이 없으면이 문제가 발생합니다.


나는 당신이 언급하지 않은 우주 문제에 대해 결코 생각하지 않았을 것입니다. 당신은 구세주입니다!
Kshitij Bajracharya

2

문제는 권한입니다. 다른 사람이 소유하고 있기 때문에 mac.err에 쓸 수 없기 때문에 시작할 수 없습니다.

mysql을 시작할 사용자가 / usr / local / var / mysql 폴더를 소유하고 있는지 확인하십시오. 잭으로 mysql을 시작하면 모든 것이 좋습니다. 그러나 루트로 시작하면 잭이 쓸 수없는 mac.err (루트 소유) 파일이 만들어 지므로 잭으로 다시 시작하려고하면 실패합니다.

  1. mysql.server start를 실행하는 사용자가 폴더 및 파일을 소유하고 있는지 확인하십시오.
  2. 다른 사람이 소유 한 mac.err 또는 mac.pid가 없는지 확인하십시오.
  3. 시작은 올바른 사용자입니다.

chown -R <user_name> / usr / local / var / mysql을 사용했으며 훌륭하게 작동했습니다. 좋은 해결책.
mbokil

2

제 경우에는 vPas cPanel 에서이 문제가 발생했습니다 .

위의 답변 중 대부분을 시도했지만 성공하지는 못했습니다.

  1. 오류 로그의 위치를 ​​확인하십시오. 오류 줄의 끝에 언급 될 것입니다.

오류! PID 파일 (/var/lib/mysql/111318.vps-11.com.pid)을 업데이트하지 않고 서버가 종료됩니다.

  1. 해당 파일 (/var/lib/mysql/111318.vps-11.com.err)을 열고 하단 라인을 확인하십시오. 내 경우에는

[오류] 치명적인 오류 : 권한 테이블을 열고 잠글 수 없음 : 테이블 './mysql/db'가 충돌로 표시되어 복구되어야합니다.

  1. 이를 해결하는 방법 : 명령으로 테이블 인덱스 복구 및 수정 :

[~] # myisamchk -r /var/lib/mysql/mysql/db.MYI

https://forums.cpanel.net/threads/mysql-is-not-running.407142/

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