OK、私はあちこち検索して、インストール、アンインストール、さまざまなオプションを試してみましたが、成功していませんでした。
Mac OS X Lion(10.7.3)で、Python、MySQLをセットアップしようとしています。
HomeBrew経由でPythonとMySQLを正常にインストールしました。 Pythonはうまく機能します。
MySQLのインストール後、最初の2つの手順(設定解除とmysql_install_db
コマンド)を実行しました。
さて、mysql「mysql.server start」を起動しようとすると、次のエラーが表示されます
ERROR! The server quit without updating PID file (/usr/local/var/mysql/Brajeshwar.local.pid).
Brajeshwar
は、マシンのユーザー名です。EDIT 2012/09/18:Kaneが指摘 のように、mysql
データベースが適切に設定されていることを確認してください他のことをする前に詳細については、「 mysql.server start?でのPIDエラー? 」を参照してください。
元の回答は歴史のために保持されています:それはおそらくisパーミッションの問題です。 /usr/local/var/mysql/*.err
を確認してください。私の言った:
120314 16:30:14 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 ./ibdata1
InnoDB: File operation call: 'open'.
InnoDB: Cannot continue operation.
120314 16:30:14 mysqld_safe mysqld from pid file /usr/local/var/mysql/janmoesen.local.pid ended
私もこれをしなければなりませんでした:
Sudo chown _mysql /usr/local/var/mysql/*
mysql
フォルダーのアクセス許可の問題であることがわかりました。
chmod -R 777 /usr/local/var/mysql/
私のためにそれを解決しました。
私はmysqlを完全に再インストールすることになり、最終的にはうまくいきました。
WARNINGこれによりすべてのデータベースが削除されるため、最初にダンプを保存してください。
brew remove mysql
brew cleanup
launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
rm ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
Sudo rm -rf /usr/local/var/mysql
brew install mysql
mysqld --initialize --explicit_defaults_for_timestamp
mysql.server start # no Sudo!
Mac 10.10.5 Yosemiteでこの問題が発生しました
これを解決するために私がしたこと
cd /usr/local/var/mysql
Sudo rm *.err && Sudo rm *.pid
Sudo reboot
Sudo mysql.server start
2014年11月:Mac OS X MavericksまたはYosemite上のMySQL 5.6.xでこのエラーが発生し、PHPでMySQLをローカルで使用する場合(/tmp/mysql.sockはPHP PDOはsockファイルを見つけることを期待しています)、これが私のために修正したものです:
1)デフォルトのhomebrew構成ファイルの行のコメントを外し、次のように編集します
$ Sudo vi /usr/local/Cellar/mysql/5.6.21/my.cnf
...
basedir = /usr/local/Cellar/mysql/5.6.21
datadir = /usr/local/var/mysql
port = 3306
server_id = <UNIQUE_NUMBER_HERE_OR_LEAVE_COMMENTED_OUT>
socket = /tmp/mysql.sock
pid-file = /usr/local/var/mysql/[BOXNAME].local.pid
....
BOXNAMEは、ネットワーク上のコンピューターの一意のIDとしてシステム設定->ネットワークにあるものです。
2)mysql datadirのすべてのファイルにパーミッションを設定します。これらはすべて[my_username]が所有しています。 MySQLはこれについて非常にうるさいので、ディレクトリ(ユーザー_mysql)が所有していない限り、pidファイルの作成を拒否します。
$ Sudo chown -R _mysql:mysql /usr/local/var/mysql
3)bashヘルパー/ラッパースクリプトを使用してMySQLを起動します。
$ Sudo mysql.server start
Starting MySQL
. SUCCESS!
それが役に立てば幸いです。上記がうまくいかない場合は、Cellar/mysql/VERSION_/bin /ディレクトリでmysqld_safeバイナリを手動で実行し、設定が何であるかを確認してください(実行されている場合)
Sudo /usr/local/Cellar/mysql/5.6.12/bin/mysqld_safe &
それが実行される場合、次のことができます
ps aux | grep mysql
のようなものを見ます
[username] 6881 0.0 2.7 3081392 454836 ?? S 8:52AM 0:00.54 /usr/local/Cellar/mysql/5.6.21/bin/mysqld --basedir=/usr/local/Cellar/mysql/5.6.21 --datadir=/usr/local/var/mysql --plugin-dir=/usr/local/Cellar/mysql/5.6.21/lib/plugin --verbose --log-error=/usr/local/var/mysql/BOXNAME.local.err --pid-file=/usr/local/var/mysql/BOXNAME.local.pid
なぜそれが私のために働いたのかはわかりませんが、my.cnf設定ファイルオプションの入手先を示しています。コマンドラインオプションを使用して、mysqldを手動で起動するときにトラブルシューティングを試みることもできます。
Mysqld_safeを使用してMySQLサーバーを実行するためにmanageを実行する場合、mysql.server bashヘルパーを試す前にこれをシャットダウンする必要があります。データを破損する可能性があるため、-9 [PID]を殺す衝動に抵抗してください。
mysqladmin -uroot shutdown
幸運を!
OS X El Capitanでも同じ問題が発生しました。これを修正した端末コマンドシーケンスを次に示します。
エラーファイルを削除します(セットアップに応じてパスを変更する必要があります)
Sudo rm /usr/local/mysql/data/*.err
まだ実行中のmysqlプロセスの情報を見つけて強制終了します。
ps -A | grep -m1 mysql | awk '{print $1}' | Sudo xargs kill -9
次に、MySQLを再起動します。
/usr/local/mysql/support-files/mysql.server start
これは私のために働いた:
Sudo chmod -R 777 /usr/local/var/mysql/
Sudo /usr/local/mysql/support-files/mysql.server start
これは10.12.2で私のために働いた:
$ rm /usr/local/var/mysql/*.err
それから
$ brew services restart mysql
私の記憶が正しければ、権限の問題です。 pidファイルまたはファイルが保存されているフォルダーを「タッチ」および「chmod」してみてください。
私の問題は、サーバーを1回Sudoとして起動し、ローカルユーザーとして再起動しようとしたことです。
ここで、mysqlはrootが所有する「.err」ファイルに書き込むことができませんでした。そのファイルを削除して、サーバーを再起動する必要がありました。
Sudo rm /usr/local/var/mysql/*.err
mysql.server start
Mac上のMySQLで同様の問題が発生しました(Mac OS XはMySQLサーバーを起動できませんでした。理由:255および「エラー!サーバーはPIDファイルを更新せずに終了しました」)。長い試行錯誤のプロセスの後、最後にファイルのアクセス許可を復元するために、私はちょうどそれをしました:
Disk Utilities.appを起動します
左側のパネルでドライブを選択します
「ディスクのアクセス許可の修復」ボタンをクリックします
これは私にとってのトリックでした。これが他の誰かの助けになることを願っています。
Usr/local/var/mysql/your_computer_name.local.errファイルを見つけて、エラーに関する詳細を理解します
場所:/usr/local/var/mysql/your_computer_name.local.err
おそらくパーミッションに問題がある
ps -ef | grep mysql
kill -9 PID
ここで、PIDは2番目の列の値2です。mysqlの所有権を確認します
ls -laF/usr/local/var/mysql /
if it is owned by root, change it mysql or your user name
Sudo chown -R mysql/usr/local/var/mysql /
これを試してください(OSX)
ステップ1:ps -aux | grep mysql
次に、4桁のPID番号を削除します
ステップ2:kill 1965
ステップ3:mysql.server start
または、それらのPID番号を見つけるのに苦労している場合は、以下を試してください
もう一度ステップ1:ps -aux | grep mysql
再度ステップ2:killall
もう一度ステップ3:mysql.server start
私にとっては:
unset TMPDIR
mysql_install_db --user=`whoami` --basedir="$(brew --prefix mariadb)" --datadir=/usr/local/var/mysql --tmpdir=/tmp
私のために働いたのは:
Sudo chmod -R 777 data
cd support-files/
Sudo ./mysql.server start
その後、サーバーの実行が開始されました。
しかし、この方法の問題は、mysqlを今すぐ起動するたびにこれを繰り返す必要があることです。なぜこのように突然動作し始めたのか分かりません。
Mysqlインストールを8.xにアップグレードした場合、以前のバージョンが pgradation でサポートされているかどうかを確認してください。
そうでない場合、mysqlは機能しません! /usr/local/var/mysql
内のすべての構成ファイルとともにmysqlをアンインストールします(フォルダー全体を削除します)。 mysqlを再インストールします。
注:再インストールすると、データが失われる可能性があります。
OSX El Capitanでの私のソリューションは:
Sudo chmod ugo+w /tmp
突然壊れました。
エラーは:
ERROR! The server quit without updating PID file
そしてログは示しました:
Can't start server : Bind on unix socket: Permission denied
また、OSXにはデフォルトではmy.cnf
ファイルがなく、デフォルトでは必要ないことに注意してください。これは知りませんでした。幸運を!
答えはどれも私には役に立たなかった。しかし、私はSudo mysql.server start
を実行しただけで、うまく機能しました。
また、私にとっては、*。errファイルに権限の問題は表示されませんでした。
これはファイル許可の問題です。ディスクのアクセス許可を確認して修復します。
Osx => Cmd + Space => Disk Utilty => Disk Permissionsを確認します。
ディスクのアクセス許可を修復した後に検証が完了しました。 mysql.server startコマンドは正常に機能しました。
Linuxでこの問題が発生しましたが、原因はすべてのmysqlインストールに関連しています。私の場合、起動が完了してpidファイルが更新される前にサーバーがクラッシュしていました。 「service mysql start」経由ではなく、mysqldを直接起動すると、エラーメッセージが表示されました。
私の場合、原因はログファイルが配置されているパーティションがいっぱいだったことです。ログファイルを削除すると、mysqlの再起動が許可されました。この問題をテストするには、mysqlアクティビティログの場所に移動し、df .
を実行します。
上記のすべての解決策は私には機能しません。しかし、彼らは私にこのエラーを修正するための手がかりを与えてくれます。
mysql.server start ---- error PIDファイルを更新せずにサーバーが終了しました
Homebrewを使用してmacbook mojaveに[email protected]をインストールしました
[email protected]をインストールする
/usr/local/var/mysql/IU.lan.errにあるmysqlエラーログ、その中に1行あります:権限テーブルを開いてロックできません:テーブル 'mysql.user'は存在しません
goole検索エンジンで多くの投稿を試した後、私はbaiduに目を向けました https://blog.csdn.net/xhool/article/details/52398042 この投稿に触発され、私は解決策を見つけました:
rm/usr/local/var/mysql/*
mysqld-初期化
rootユーザーのランダムパスワードがbashに表示されます。しかし、コマンドmysql -uroot -p [theRandomPassword]は機能しません。そのため、パスワードをリセットする必要があります。このような内容で初期化ファイルを作成します
'root' @ 'localhost'のパスワードの設定= PASSWORD( 'MyNewPass');
デスクトップなど、見つけやすい任意のディレクトリに配置します
mysqld --init-file = [YourInitFile]&
画面に多くのログが印刷されます。
mysql -uroot -pMyNewPass
ハイバージョンmysqlをお楽しみください!
同様の問題がありました。しかし、次のコマンドは私を救った。
cd /usr/local/Cellar
Sudo chown _mysql mysql
私は同じ問題を抱えていました:
しかし、状況は、私が入ろうとするたびに:
/usr/local/mysql/support-files/mysql.server start
エラーで示されたlocalhost.pid
の代わりにiMax0.local.pid
という名前のファイルが作成されます。
ERROR! The server quit without updating PID file (/usr/local/mysql/data/iMax0.local.pid).
私にとって有効な解決策は、localhost.pid
をコピーし、iMax0.local.pid
に名前を変更することでした。
Sudo chmod -R 777 /usr/local/var/mysql/
私のために働く。
$ Sudo mysql.server restart
わたしにはできる。