OS X 環境で MySQL を起動すると、エラー メッセージが表示されます。 016-03-03T00:02:30.483037Z 0 [エラー] InnoDB: ./ibdata1 をロックできません エラー: 35 2016-03-03T00:02:30.483100Z 0 [注] InnoDB: 同じ InnoDB データまたはログ ファイルを使用している別の mysqld プロセスがまだ存在していないことを確認してください。 ターミナルは上記のエラー ログを繰り返し出力し続けます。エラー ログから、別の mysqld プロセスが ./ibdata1 ファイルを占有しているようです。したがって、ps コマンドを使用して、mysqld プロセスが実行中かどうかを確認します。 ps -ef |grep mysqld 74 7711 1 0 午前 8:04?? 0:00.34 /usr/local/mysql/bin/mysqld --user=_mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --log-error=/usr/local/mysql/data/mysqld.local.err --pid-file=/usr/local/mysql/data/mysqld.local.pid 7711 プロセスが実行中であることが判明したため、強制的に終了されました。 sudo キル -9 7711 psで再度クエリを実行します。 ps -ef |grep mysqld 74 7759 1 0 午前 8:10?? 0:00.29 /usr/local/mysql/bin/mysqld --user=_mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --log-error=/usr/local/mysql/data/mysqld.local.err --pid-file=/usr/local/mysql/data/mysqld.local.pid まだ存在しますが、pid は元の 7711 から現在の 7759 に変更されています。次に、mysqld プロセスが開いたファイルを確認します。 lsof -c mysqld プロセスでファイルが開かれていないことが問題です。
もう一度実行します: sudo lsof -c mysqld コマンド PID ユーザー FD タイプ デバイス サイズ/オフ ノード名 mysqld 8655 _mysql cwd DIR 1,4 544 3090250 /usr/local/mysql/data mysqld 8655 _mysql.txt REG 1,4 31130736 3089789 /usr/local/mysql/bin/mysqld 実際、mysqld プロセスが実際に実行されており、このプロセスもこれらの mysql ファイルを占有していることがわかりました。Google で調べてみると、OS X で MySQL を起動する方法は Linux とはまったく異なることがわかりました。OS X で MySQL を起動/再起動する正しい方法は次のとおりです。 sudo launchctl アンロード -w /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist ここで、mysqld プロセスがまだ存在するかどうかを確認してみましょう。 ps -ef |grep mysqld まあ、確かに消えてしまったことがわかったので、MySQL をもう一度起動しました。 sudo launchctl load -w /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist 問題はようやく解決しましたが、まだ終わりではありません。原理を解明する必要があります。 LAUNCHDとは何ですか? Launchd は、Mac OS X 10.4 以降に導入された重要なプロセスです。システム環境を初期化するために使用されます。カーネルが正常にロードされた後、OS 環境で最初に開始されるプロセスです。従来の Linux では、起動時に開始されるサービスを管理するために /etc/rc.* または /etc/init を使用しますが、OS X では launchd を使用してそれらを管理します。この方法でスタートアップ項目を構成するのは非常に簡単で、必要な plist ファイルは 1 つだけです。 /Library/LaunchDaemons ディレクトリ内の plist ファイルはすべて、システムの起動直後に開始されるプロセスです。 launchctl コマンドを使用して、plist ファイルをロード/アンロードします。設定ファイルをロードするとプログラムが起動し、設定ファイルをアンロードするとプログラムが終了します。 設定ファイルをアンインストールした後、mysqld コマンドを使用して mysql プロセスを直接起動してみます。 ローカルのmysqlディレクトリ 2016-03-03T01:35:50.359258Z 0 [エラー] InnoDB: ./ib_logfile0 を読み取り/書き込みモードで開くことができません。 2016-03-03T01:35:50.359283Z 0 [エラー] InnoDB: プラグインの初期化がエラーで中止されました 一般的なエラー 2016-03-03T01:35:50.670517Z 0 [エラー] プラグイン 'InnoDB' 初期化関数がエラーを返しました。 2016-03-03T01:35:50.670555Z 0 [エラー] プラグイン「InnoDB」をストレージ エンジンとして登録できませんでした。 2016-03-03T01:35:50.670568Z 0 [エラー] プラグインの初期化に失敗しました。 2016-03-03T01:35:50.670574Z 0 [エラー] 中止しています ib_logfile0 を開くことができません。これはおそらくユーザー権限ファイルです。現在のシステム ユーザーでは MySQL を起動できません。次に、sudo を追加して、root として起動します。 2016-03-03T01:38:10.977313Z 0 [エラー] 致命的なエラー: mysqld を root として実行する方法を確認するには、マニュアルの「セキュリティ」セクションをお読みください。 2016-03-03T01:38:10.977339Z 0 [エラー] 中止しています 2016-03-03T01:38:10.977350Z 0 [注記] バイナリログ終了 2016-03-03T01:38:10.977410Z 0 [注記] /usr/local/mysql/bin/mysqld: シャットダウンが完了しました MySQL セキュリティマニュアルを読んで、launchd で起動するように指示します。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: 値の転送を実現するために、2つの同じレベルのコンポーネントをVueで作成します。
>>: Linux システムで Tomcat のポート 80 を使用する方法
この記事では、vueの大画面表示適応の具体的なコードを参考までに紹介します。具体的な内容は以下のとお...
Centos7 と Centos6 では、GRUB パスワードの設定手順に大きな違いがあります。これ...
目次コンセプト紹介論理的ルール完全なコード主な実装コンセプト紹介セルオートマトンとは、コンピュータの...
目次概要ファイル記述子同期、非同期、Promise同期書き込み非同期書き込み(推奨)約束の書き方...
日常の開発では、データベースの追加、削除、変更、クエリが一般的に行われるため、Mysql で NUL...
学習プロセス中にプッシュ イメージが常にタイムアウトすることがわかったため、Alibaba Clou...
MultiTail は、tail コマンド機能と同様に、複数のドキュメントを同時に監視するために使用...
このテクニックは、この記事から来ています - シルキーでスムーズなパフォーマンスでボックスシャドウを...
目次導入インストール1. マウントするフォルダを作成する2. イメージをプルする3. コンテナを作成...
問題の説明CSS を使用して上部の固定効果を実現したいと思います。 margin-top と pos...
本体の幅をウィンドウの幅に設定します(次のスクリプトで制御されます) $("body&qu...
データのバックアップと復元に関する最初の記事を皆さんに共有します。具体的な内容は次のとおりです。基本...
いわゆるスライディングドアテクノロジーとは、さまざまな長さのテキストに合わせてボックスの背景を自動的...
MySQL 5.7 には、オンライン DDL、マルチソース レプリケーション、拡張された半同期、テー...
クラウドサーバーを使用するとデータベースに接続できる場合もありますが、Navicat Premium...