MacにbrewでMySQLとその問題をインストールする
9420 ワード
一、環境とインストール
macOSバージョン:10.13.1
Mysqlバージョン:
その他のコマンド:
インストールリファレンス:Install MySQL on macOS Sierra
brew services公式サイト:homebrew-services
二、出会った問題
1、接続できない
説明:
Navicatまたはコマンドラインを使用しても接続できません.ユーザー名/パスワードエラーが表示されます.
解決方法:
パスワードなしでログインするには、次の手順に従います.
次のスクリプトを使用して、データベースのrootパスワードを再設定します.
2、mysqlが起動を再開できないエラーログがログに表示される
ログの詳細:
解決:
システムが走っているmysqlプロセス(
macosのセルフ起動サービスのリストを表示します.
重複するmysqlサービスがあることを発見し、重複を削除したのは.
brewサービス方式で実行されているので、実行中のものを
三、最後に2つ言う
docker方式をお勧めします.以前私が使っていたmssql dockerバージョンはインストールしやすいです.
こんなに長い間使っていたのに、mssql dockerはたまにわけのわからないフラッシュバックが出てきて、しかもログも見つからず、疑問!!!
macOSバージョン:10.13.1
Mysqlバージョン:
mysql Ver 14.14 Distrib 5.7.20, for osx10.13 (x86_64) using EditLine wrapper
brewを使用してMySQLをインストールするには:brew install mysql
brew tap homebrew/services
brew services start mysql
その他のコマンド:
# service
brew services list
# mysql
brew services restart mysql
# mysql
brew services stop mysql
インストールリファレンス:Install MySQL on macOS Sierra
brew services公式サイト:homebrew-services
二、出会った問題
1、接続できない
説明:
Navicatまたはコマンドラインを使用しても接続できません.ユーザー名/パスワードエラーが表示されます.
ERROR 1045 (28000) Access denied for user 'root'@'localhost' (using password: NO)
解決方法:
パスワードなしでログインするには、次の手順に従います.
sudo mysqld_safe --skip-grant-tables &
次のスクリプトを使用して、データベースのrootパスワードを再設定します.
UPDATE mysql.user SET authentication_string = PASSWORD('MyNewPass')
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;
2、mysqlが起動を再開できないエラーログがログに表示される
ログの詳細:
Dec 6 01:36:35 --- last message repeated 1 time ---
Dec 6 01:36:35 s01 com.apple.xpc.launchd[1] (homebrew.mxcl.mysql[18960]): Service exited with abnormal code: 1
Dec 6 01:36:35 s01 com.apple.xpc.launchd[1] (homebrew.mxcl.mysql): Service only ran for 0 seconds. Pushing respawn out by 10 seconds.
Dec 6 01:36:45 s01 com.apple.xpc.launchd[1] (com.apple.xpc.launchd.domain.system): Session adoption is only allowed in user domains.
Dec 6 01:36:45 --- last message repeated 1 time ---
Dec 6 01:36:45 s01 com.apple.xpc.launchd[1] (homebrew.mxcl.mysql[19029]): Service exited with abnormal code: 1
Dec 6 01:36:45 s01 com.apple.xpc.launchd[1] (homebrew.mxcl.mysql): Service only ran for 0 seconds. Pushing respawn out by 10 seconds.
Dec 6 01:36:55 s01 com.apple.xpc.launchd[1] (com.apple.xpc.launchd.domain.system): Session adoption is only allowed in user domains.
Dec 6 01:36:55 --- last message repeated 1 time ---
Dec 6 01:36:55 s01 com.apple.xpc.launchd[1] (homebrew.mxcl.mysql[19098]): Service exited with abnormal code: 1
Dec 6 01:36:55 s01 com.apple.xpc.launchd[1] (homebrew.mxcl.mysql): Service only ran for 0 seconds. Pushing respawn out by 10 seconds.
Dec 6 01:37:06 s01 com.apple.xpc.launchd[1] (com.apple.xpc.launchd.domain.system): Session adoption is only allowed in user domains.
解決:
システムが走っているmysqlプロセス(
ps -e | grep mysql
)を調べた.つまり、mysqlサービスの重複作成が発生した.macosのセルフ起動サービスのリストを表示します.
ll ~/Library/LaunchAgents
ll /Library/LaunchDaemons
ll /Library/LaunchAgents
重複するmysqlサービスがあることを発見し、重複を削除したのは.
brewサービス方式で実行されているので、実行中のものを
brew services list
で取得し、別のものを削除すればよい.三、最後に2つ言う
docker方式をお勧めします.以前私が使っていたmssql dockerバージョンはインストールしやすいです.
こんなに長い間使っていたのに、mssql dockerはたまにわけのわからないフラッシュバックが出てきて、しかもログも見つからず、疑問!!!