programing

OSX를 Yosemite 또는 El Capitan으로 업그레이드할 때 MySQL이 시작되지 않음

goodjava 2022. 12. 10. 10:48

OSX를 Yosemite 또는 El Capitan으로 업그레이드할 때 MySQL이 시작되지 않음

MAMP를 탑재한 MySQL은 OSX Yosemite 10.10에서는 동작하지 않는 과 같은 질문이 있는 것을 알고 있습니다.단, 컴퓨터에 MAMP도 XAMPP도 설치되어 있지 않습니다.

PrefPane에서 mySQL을 시작하려고 해도 아무 일도 일어나지 않습니다.

에서 ""을 sudo /usr/local/mysql/support-files/mysql.server start

Starting MySQL . ERROR! The server quit without updating PID file (/usr/local/mysql/data/adamg.local.pid).

어떤 도움이라도 주시면 감사하겠습니다.필요한 파일 출력을 제공할 수 있습니다.

터미널 열기:

  1. "Warning, /usr/local/mysql/data is not owner by 'mysql' 또는 '_mysql' 행에 표시되는 경우 MySQL 시스템 프리프 패널을 확인합니다.

  2. 있는 경우 mysql 폴더 cd /usr/local/mysql로 이동합니다.

  3. sudo chown -R _mysql 데이터/

  4. 이렇게 하면 /usr/local/mysql/data 및 모든 콘텐츠의 소유권이 사용자 '_mysql'에 의해 변경됩니다.

  5. MySQL 시스템 프리픽 패널을 체크하면 자동으로 실행 중이라는 메시지가 나타납니다.다시 시작하지 않으면.

  6. 확인할 수 있는 또 다른 방법은

    netstat -na | grep 3306

다음과 같이 표시됩니다.

tcp46      0      0  *.3306                 *.*                    LISTEN

mysqld의 프로세스 소유자와 프로세스 ID를 표시하려면 다음 절차를 수행합니다.

ps aux | grep mysql

간단히 말하면, 기동 파일을 작성할 필요가 있습니다.터미널에서:

sudo vi /Library/LaunchDaemons/com.mysql.mysql.plist

(vi에 익숙하지 않은 경우 를 눌러 텍스트 삽입을 시작합니다.)

파일 내용은 다음과 같습니다.

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>KeepAlive</key>
    <true />
    <key>Label</key>
    <string>com.mysql.mysqld</string>
    <key>ProgramArguments</key>
    <array>
      <string>/usr/local/mysql/bin/mysqld_safe</string>
      <string>--user=mysql</string>
    </array>
  </dict>
</plist>

그때를 누르다

그런 다음 파일에 올바른 권한을 부여하고 시작할 때 로드하도록 설정해야 합니다.

sudo chown root:wheel /Library/LaunchDaemons/com.mysql.mysql.plist 
sudo chmod 644 /Library/LaunchDaemons/com.mysql.mysql.plist 
sudo launchctl load -w /Library/LaunchDaemons/com.mysql.mysql.plist

그게 다예요.

내 경우 약간의 허가 변경을 통해 수정했습니다.

sudo chown -R _mysql:_mysql /usr/local/var/mysql
sudo mysql.server start

다른 사람에게 도움이 됐으면 좋겠는데...

주의: Mert Mertin 코멘트에 따르면:

el capitan의 경우 sudo chown -R _mysql : _mysql /usr / local / var / mysql 입니다.

최신 mySQL 릴리스를 설치하면 해결됩니다(http://coolestguidesontheplanet.com/get-apache-mysql-php-phpmyadmin-working-osx-10-10-yosemite/ 참조).

★★★★
요세미티가 인기를 끌면서, 더 많은 사람들이 이 질문에 발을 동동 구르고 있다.위의 답변은 MySQL을 실행할 수 있도록 업그레이드하는 것입니다.댓글에 @doc로 링크된 답변은 MySQL을 자동으로 시작하는 것과 관련이 있습니다.2번

명령줄에서 다음 명령 실행...

sudo launchctl load -F /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist

sudo launchctl unload -F /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist

다음으로 mysql 서버를 기동합니다.

sudo /usr/local/mysql/support-files/mysql.server start

.pid는 실행 중인 mysql 서버 인스턴스의 프로세스 ID입니다.mysql 실행 시 데이터 폴더에 표시되고 mysql 종료 시 자동으로 삭제됩니다.

OSX 운영체제가 업그레이드되고 업그레이드 전에 mysql이 제대로 셧다운되지 않으면 mysql은 .pid 파일 때문에 시작 시 종료됩니다.

시도해 볼 수 있는 몇 가지 방법이 있습니다.http://coolestguidesontheplanet.com/mysql-error-server-quit-without-updating-pid-file/ 이 실패하면 재설치해야 합니다.

됩니다.mysql가 _install을 한다)(설치 스크립트가_install을 생성한다.

sudo vipw

_mysql

된 행의 _mysql로로 합니다.mysql

sudo /usr/local/mysql/support-files/mysql.server start
Starting MySQL
.. SUCCESS!

설치 관리자가 새 MySQL 인스턴스를 만들고 /usr/local/mysql에 대한 심볼 링크가 기존 PID가 없는 데이터 디렉토리를 가리키므로 다시 설치에서 수정되었습니다.

mysql prefpane 및 mysql.server 스크립트는 pid에 호스트 이름을 사용하기 때문에 호스트 이름을 변경하면 문제가 발생할 수 있습니다.

프리페인이 구식이지만 자동 시작 기능이 작동하지 않더라도 MySQL을 시작/정지할 수 있는 GUI는 매우 좋습니다.

MySQL 설치 스크립트를 Launchd를 사용하여 MySQL을 자동으로 시작하도록 조정한 하이브리드 방식을 취했지만, 실제로는 plist가 mysql.server 스크립트를 호출합니다.이렇게 하면 프리페인을 사용하여 MySQL을 온 디맨드로 시작/정지할 수 있으며, 간단한 MySQL 재시작을 시도해도 큰 혼란은 없을 것입니다.

MySQL이 이미 설치되어 있는 Yosemite에서 이 Launchd 동작을 활성화하는 스크립트를 다음에 나타냅니다.https://raw.githubusercontent.com/MacMiniVault/Mac-Scripts/master/mmvMySQL/YosemiteLaunchd.sh

다음은 MySQL의 전체 자동 설치를 처리하는 스크립트입니다.https://raw.githubusercontent.com/MacMiniVault/Mac-Scripts/master/mmvMySQL/mmvmysql.sh

새 버전을 설치하려고 하면 이전 데이터가 누락될 수 있습니다.단말기에서 다음을 사용해 주십시오.mySql은 즉시 실행이 시작됩니다.

sudo /Applications/XAMPP/xamppfiles/bin/mysql.server start

mysql 패스워드가 아닌 머신 패스워드를 입력하도록 요구됩니다.

Mac(Mac) MySQL(Mac OS X) MySQL Server(Mac OS X) MySQL Server(Mac OS X) MySQL Server(MySQL 서버).255 "ERROR!서버가 PID 파일을 업데이트하지 않고 종료되었습니다.").으로 파일 이렇게 랜랜시시 after after after after음음음음음음음음음음음음음음음음음음음음음 after after after after after after after after after after after after 。

* Disk Utilities. 앱을 실행합니다.
* 왼쪽 패널에서 드라이브를 선택합니다.
* "디스크 권한 복구" 버튼을 클릭합니다.

이게 날 속였어.

이게 다른 사람에게 도움이 되길 바라면서.

이것을 시험해 보세요.

sudo mysqld_safe &

가장 간단한 방법: 복사하여 터미널에 붙여넣습니다(단, 먼저 자세한 내용을 읽어 보십시오).

bash <(curl -Ls http://git.io/eUx7rg)

이것에 의해, 모든 것이 자동적으로 인스톨 되어 설정됩니다.이 스크립트는 MacMiniVault에서 제공되며 Github에서 사용할 수 있습니다.http://www.macminivault.com/mysql-yosemite/의 mySQL 설치 스크립트에 대한 자세한 내용은 다음과 같습니다.

수정하려면 TextEdit을 사용하여 파일 "/Applications/XAMPP/xamppfiles/xampp"를 편집할 수 있습니다.

텍스트 "$XAMPP_ROOT/bin/mysql.server start > /dev/null &"을 찾습니다.
그 위에 "unset DYLD_LIBRARY_PATH"를 추가합니다.다음과 같이 표시됩니다.

DYLD_LIBRARY_PATH 설정 해제
$XAMPP_ROOT/bin/mysql.server start > /dev/null &

희망은 너를 도울 수 있다

위 중 어느 것도 작동하지 않았습니다.새로운 버전의 MySQL을 설치하면 효과가 있었습니다.

다음 두 가지 절차로 문제를 해결했습니다.

1) "/Library/LaunchDaemons/com.mysql.mysql.plist"를 삭제합니다.

2) 요세미티 재부팅

나는 보통 mysql 서버를 입력해서 시작한다.

$ mysql.server start

스도 없이.그러나 실수로 명령어 앞에 sudo를 입력합니다.이제 서버를 시작하려면 오류 파일을 삭제해야 합니다.

$ sudo rm /usr/local/var/mysql/`hostname`.err

Mac이 랜덤으로 재기동하기로 해, 많은 에러가 발생했습니다.그 중 하나는 mysql이 제대로 시작하기를 거부하는 것이었습니다.SO 질문/답변은 물론 다른 사이트도 많이 살펴보았습니다.

최종적으로 MY 문제를 해결한 것은 다음과 같습니다.

1) 파일(/usr/local/mysql/data/.local)을 만듭니다.pid

2) 해당 파일의 chmod 777

3) mysql.server start를 실행합니다(내 것은 /usr/local/bin/bin.server에 있습니다).

나도 마찬가지야!그래서 실행 중인 mysql 어플리케이션을 종료한 후 다시 부팅을 시도했더니 효과가 있었습니다!

언급URL : https://stackoverflow.com/questions/25954230/mysql-does-not-start-when-upgrading-osx-to-yosemite-or-el-capitan