programing

MySQL pid가 종료됨(mysql을 시작할 수 없음)

sourcejob 2023. 10. 21. 10:23
반응형

MySQL pid가 종료됨(mysql을 시작할 수 없음)

MySQL(mysql-5.5.24-osx10.6-x86_64)을 새로 설치했습니다.저는 Mac Pro Quad Core를 탑재한 Lion(OS 10.7.4)에 있습니다.GUI 설치자인 MySQL을 설치하고 pref 창과 startup 항목도 설치했습니다.

그러나 실행할 때:

sudo ./bin/mysqld_safe

나는 다음과 같은 메시지를 받습니다.

120515 17:58:19 mysqld_safe Logging to '/usr/local/mysql-5.5.24-osx10.6-x86_64/data/Dannys-Mac-Pro.local.err'.
120515 17:58:19 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql-5.5.24-osx10.6-x86_64/data
120515 17:58:20 mysqld_safe mysqld from pid file /usr/local/mysql-5.5.24-osx10.6-x86_64/data/Dannys-Mac-Pro.local.pid ended

또한 기본 설정 창에서 MySQL을 시작할 수 없습니다.

오늘 구글링과 리서치의 시간을 바탕으로 지금까지 시도한 내용은 다음과 같습니다.

권한 문제?

다음 내용:

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

그리고.

sudo chown -R /usr/local/mysql-5.5.24-osx10.6-x86_64/
sudo chown -R /usr/local/mysql

다음 내용:

sudo chown -R root:wheel /Library/StartupItems/MySQLCOM

연결 문제?

다음 내용:

/usr/local/mysql/support-files/mysql.server -- 제가 했습니다:

basedir="/usr/local/mysql"
datadir="/usr/local/mysql/data"

/etc/rc.common 파일의 끝에 /usr/local/ mysql/bin/mysqld_safe --user= mysql &

다음 내용:

sudo ln -s /usr/local/mysql-5.5.24-osx10.6-x86_64 /usr/local/mysql

저도 여기서 제거 과정을 시도해보고 다시 설치해봤지만 별 차이가 없는 것 같습니다.또한 다른 mySQL 프로세스가 우연히 실행되고 있는지 확인하기 위해 OS X에서 Activity Monitor를 실행했습니다.

위의 어떤 것도 작동하지 않아서 저는 어찌할 바를 모르겠어요.다음 위치에 있는 .err 파일의 로그입니다.

/usr/local/mysql-5.5.24-osx10.6-x86_64/data/Dannys-Mac-Pro.local.err

120515 18:07:43 mysqld_safe mysqld from pid file /usr/local/mysql-5.5.24-osx10.6-x86_64/data/Dannys-Mac-Pro.local.pid ended
120515 18:13:01 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql-5.5.24-osx10.6-x86_64/data
120515 18:13:01 [Warning] Setting lower_case_table_names=2 because file system for /usr/local/mysql-5.5.24-osx10.6-x86_64/data/ is case insensitive
120515 18:13:01 [Note] Plugin 'FEDERATED' is disabled.
/usr/local/mysql-5.5.24-osx10.6-x86_64/bin/mysqld: Table 'mysql.plugin' doesn't exist
120515 18:13:01 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
120515 18:13:01 InnoDB: The InnoDB memory heap is disabled
120515 18:13:01 InnoDB: Mutexes and rw_locks use GCC atomic builtins
120515 18:13:01 InnoDB: Compressed tables use zlib 1.2.3
120515 18:13:01 InnoDB: Initializing buffer pool, size = 128.0M
120515 18:13:01 InnoDB: Completed initialization of buffer pool
120515 18:13:01 InnoDB: highest supported file format is Barracuda.
120515 18:13:01  InnoDB: Waiting for the background threads to start
120515 18:13:02 InnoDB: 1.1.8 started; log sequence number 1595675
120515 18:13:02 [ERROR] /usr/local/mysql-5.5.24-osx10.6-x86_64/bin/mysqld: unknown option '--skip-locking'
120515 18:13:02 [ERROR] Aborting

120515 18:13:02  InnoDB: Starting shutdown...
120515 18:13:03  InnoDB: Shutdown completed; log sequence number 1595675
120515 18:13:03 [Note] /usr/local/mysql-5.5.24-osx10.6-x86_64/bin/mysqld: Shutdown complete

120515 18:13:03 mysqld_safe mysqld from pid file /usr/local/mysql-5.5.24-osx10.6-x86_64/data/Dannys-Mac-Pro.local.pid ended

업데이트: 동일한 기계를 스노우 레오파드에서 마운틴 라이온 10.8.1로 업그레이드했는데 MySQL은 업그레이드로 완벽하게 작동하여 별도의 작업을 수행할 필요가 없었습니다.

제 MAC OS 10.7.5에 mysql 최신 버전 mysql-5.6.10-osx10.7-x86.dmg을 설치할 때도 같은 문제가 발생합니다.다음은 저의 해결책입니다.먼저 설치된 mysql을 삭제합니다.

sudo rm /usr/local/mysql
sudo rm -rf /usr/local/mysql*
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/My*
sudo rm -rf ~/Library/PreferencePanes/My*
sudo rm -rf /Library/Receipts/mysql*
sudo rm -rf /Library/Receipts/MySQL*
sudo rm -rf /var/db/receipts/com.mysql.*

그러면 mysql-5.1.68-osx10.6-x86.dmg를 가져와 이 이전 버전을 설치한 후 완료!

@AndPy가 말했듯이, 나도 마찬가지야, 만약 너가ls -l/usr/local/var/mysql당신은 그 파일을 볼 수 있습니다.COMPUTER-NAME.local.err 입니다._mysql아니면 그런..이런 경우에는 그냥 파일을 지우면 됩니다.mysql.server start사용자가 소유한 새 것을 만들고 이번에는 제대로 시작합니다 :)

사용자가 이미 파일을 소유하고 있는 경우, 이는 도움이 되지 않습니다. 구글을 더 많이 검색해야 합니다 :(

디렉토리 데이터의 파일 소유자가 잘못되어 redmine bitnami stack에서 이 오류를 발견했습니다.

/mysql/data/ 디렉토리의 소유자가 'mysql' 사용자여야 합니다.

도움이 되길 바랍니다.

OS X 매버릭스로 업데이트한 후에도 같은 문제가 있었습니다.

MySQL을 시작하는 중입니다. 오류!서버가 PID 파일을 업데이트하지 않고 종료했습니다.

Redrick and AndPy가 언급한 것처럼 나는 또한 에 위치한 오류 파일의 이름을 바꾸어야 했습니다(실제로 파일을 삭제했습니다).$ cd /usr/local/var/mysql. 오류 파일이 호출되었습니다.localhost.err. 파일을 제거한 후에$ rm localhost.err마침내 MySQL을 다시 시작할 수 있었습니다.$ mysql.server start.

저도 같은 문제가 있었습니다.

/usr/local/var/mysql에서 COMPUTER-NAME.local.err 형식의 파일을 찾았습니다.그 파일 이름을 변경하는 것만으로 문제가 해결되었습니다.나는 이제 mysql 서버를 시작할 수 있습니다.

mysql.server start

제 대답은 다른 것들과 매우 비슷하지만 약간 다르며 이것은 주로 비트나미 엠프 스택에 적용됩니다.제게 해결책은 다음과 같습니다.

sudo chown -R mysql mysql/

mysql/디렉토리는 에 위치한 디렉토리입니다.Applications/<mampstack-version>/

위에서는 mysql 디렉토리를 다른 디렉토리에 재귀적으로 소유자로 설정합니다.

이 작업을 완전히 수행하려면 다음을 수행하십시오.

먼저 mysql을 제거해야 하므로 이 작업을 수행하기 전에 모든 DB의 백업이 있는지 확인해야 합니다.

brew remove mysql

그런 다음 특정 파일이 제거되었는지 확인하고 다음 명령의 배치 스크립트를 만들어 실행해야 합니다.

sudo rm /usr/local/mysql
sudo rm -rf /usr/local/var/mysql
sudo rm -rf /usr/local/mysql*
sudo rm ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/My*
launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
rm -rf ~/Library/PreferencePanes/My*
sudo rm -rf /Library/Receipts/mysql*
sudo rm -rf /Library/Receipts/MySQL*
sudo rm -rf /private/var/db/receipts/*mysql*

에 가다/etc/hostconfig좋아하는 편집 프로그램을 사용하고 줄을 제거합니다.MYSQLCOM=-YES-

그다음달리기brew cleanup그런 다음 mysql을 사용하여 설치합니다.brew install mysql

이 작업을 완료하고 나면 동일한 오류가 다시 발생할 수 있습니다.폴더로 이동cd /usr/local/var/mysql/. 그 안에 파일이 있을 겁니다localhost.local.err

cat ./localhost.local.err파일을 확인합니다.다음과 유사한 내용이 표시되어야 합니다.

2018-03-24 15:41:49 140735679804288 [ERROR] Can't start server: Bind on TCP/IP port. Got error: 48: Address already in use

2018-03-24 15:41:49 140735679804288 [ERROR] Do you already have another mysqld server running on port: 3306 ?

그런 경우 명령을 실행합니다.sudo lsof -i :3306당신은 아마 다음과 같은 것을 얻게 될 겁니다.

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME mysqld 74 _mysql 20u IPv6 0xXXXXXXXXXXXXX 0t0 TCP *:mysql (LISTEN)

이것은 mysql이 포트 3306에서 이미 실행중이고 청취중이며 당신은 그것을 죽여야 한다는 것을 의미합니다. 사용합니다.top프로그램을 죽이거나 활동 모니터를 사용하여 프로그램을 죽여야 합니다.어느 쪽이든 일단 일이 끝나면 다시 돌아가요.cd /usr/local/var/mysql/폴더를 삭제합니다.localhost.local.err.

이 작업이 완료되면 mysql.server start를 실행하면 다음을 얻을 수 있습니다.

180324 15:46:18 mysqld_safe Starting mysqld daemon with databases from /usr/local/var/mysql SUCCESS!

축하합니다.일주일 동안 이 문제를 해결하려고 노력했는데 정말 쉬운 해결책이고 방금 알아냈어요.난 나 자신이 싫다.

120515 18:13:01 [ERROR] mysql.plugin 테이블을 열 수 없습니다.mysql_upgrade를 실행하여 생성하십시오.

  • 이 오류와 관련하여, 나는 당신이 나의 .cnf에 datadir를 지정했다고 가정합니다.MySQL에 기본값이 아닌 데이터 디렉토리를 사용하는 경우 폴더 mysql과 performance_schema(존재하는 것 중 하나)를 my.cnf에 지정된 데이터 디렉토리로 이동해야 합니다.이러한 폴더는 mysql 디렉토리에서 찾을 수 있습니다.

MySQL 5.5+에서는 --skip-locking 옵션이 제거됩니다.대신 --skip-external-locking을 사용합니다.MySQL 문서 --> http://dev.mysql.com/doc/refman/5.5/en/mysql-nutshell.html 인용: " --enable-locking 및 --skip-locking 서버 옵션( --external-locking 및 --skip-외부-locking 사용)"을 참조하십시오.

한 번 돌려보세요.

  1. 문제의 상위 디렉토리로 이동합니다.cd YOURPATH/usr/local/mysql
  2. rm -rf *.local.err(deletes 파일)
  3. touch YOURUSERNAME.local.pid(새로운 *.local.pid 파일을 generates합니다.)
  4. cd를 당신의 프로젝트로 다시 보내고 mysql을 다시 시작합니다.mysql.server start

/usr/local/var/mysql/에서 mysql-bin.index 파일만 제거해도 도움이 되었습니다.

나는 여러 시간 동안 시도했지만, 이것은 나에게 효과가 있습니다. 단순히 MySQL 디렉토리 파일의 소유권을 'mysql'이라는 사용자로 변경하기만 하면 됩니다.

chown -R mysql <path>/mysql-5.7.39-linux-glibc2.12-x86_64

언급URL : https://stackoverflow.com/questions/10610875/mysql-pid-ended-cannot-start-mysql

반응형