mysql 再インストールエラー InnoDB: ロックできません . /ibdata1, error: 11
2022-02-14 17:58:57
Centos 6.2には低バージョンのMysqlが付属しています。これをアンインストールして、最新のものを再インストールしてください。
プロセスの状態を見るにはpsコマンドを使用します。
以下のパッケージをダウンロードし、インストールしてください。
MySQL-client-5.5.25-1.el6.i686.rpm
MySQL-devel-5.5.25-1.el6.i686.rpm (mysql_config を含む)
MySQL-server-5.5.25-1.el6.i686.rpm
MySQL-shared-5.5.25-1.el6.i686.rpm
MySQL-shared-compat-5.5.25-1.el6.i686.rpm
インストールに成功したら
mysqlを起動し
#service mysql start
MySQLの起動を表示する SUCCESS!
プロセスの状態を見るにはpsコマンドを使用します。
#ps -ef | grep mysql
root 2853 1 0 09:03 ? 00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --pid-file=/var/lib/mysql/python.centos.pid
mysql 3105 2853 0 09:03 ? 00:00:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib/mysql/plugin --user=mysql --log-error=/var/lib/ mysql/python.centos.err --pid-file=/var/lib/mysql/python.centos.pid --socket=/var/lib/mysql/mysql.sock --port=3306
root 4163 1 0 09:17 pts/0 00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --pid-file=/var/lib/mysql/python.centos.pid
mysql 4416 4163 1 09:17 pts/0 00:00:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib/mysql/plugin --user= mysql --log-error=/var/lib/mysql/python.centos.err --pid-file=/var/lib/mysql/python.centos.pid --socket=/var/lib/mysql/mysql.sock -- port=3306
mysql write エラーログ、python.centos は私のマシン名です。2回実行したからか、2回。
シェルからmysqlに入る
# mysql
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
mysqlのサービスを終了する
#service mysql stop
MySQL server PID file could not be found!
/var/lib/mysql/python.centos.err のエラーログを表示します。
120706 09:17:59 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
120706 9:17:59 [Note] Plugin 'FEDERATED' is disabled.
120706 9:17:59 InnoDB: The InnoDB memory heap is disabled
120706 9:17:59 InnoDB: Mutexes and rw_locks use GCC atomic builtins
120706 9:17:59 InnoDB: Compressed tables use zlib 1.2.3
120706 9:17:59 InnoDB: Using Linux native AIO
120706 9:17:59 InnoDB: Initializing buffer pool, size = 128.0M
120706 9:17:59 InnoDB: Completed initialization of buffer pool
InnoDB: Unable to lock . /ibdata1, error: 11
InnoDB: Check that you do not already have another mysqld process
InnoDB: Using the same InnoDB data or log files.
120706 9:17:59 InnoDB: Retrying to lock the first data file
InnoDB: Unable to lock . /ibdata1, error: 11
InnoDB: Check that you do not already have another mysqld process
... ... ... ... ... ... ...
InnoDB: Check that you do not already have another mysqld process
InnoDB: Using the same InnoDB data or log files.
InnoDB: Unable to lock . /ibdata1, error: 11
InnoDB: Check that you do not already have another mysqld process
InnoDB: Using the same InnoDB data or log files.
120706 9:19:40 InnoDB: Unable to open the first data file
InnoDB: Error in opening . /ibdata1
120706 9:19:40 InnoDB: Operating system error number 11 in a file operation.
InnoDB: Error number 11 means 'Resource temporarily unavailable'.
InnoDB: Some operating system error numbers are described at
InnoDB: Some operating system error numbers are described at: http://dev.mysql.com/doc/refman/5.5/en/operating-system-error-codes.html
120706 9:19:40 InnoDB: Could not open or create data files.
120706 9:19:40 InnoDB: If you tried to add new data files, and it failed here,
120706 9:19:40 InnoDB: you should now edit innodb_data_file_path in my.cnf back
120706 9:19:40 InnoDB: to what it was, and remove the new ibdata files InnoDB created
120706 9:19:40 InnoDB: in this failed attempt. innoDB only wrote those files full of
120706 9:19:40 InnoDB: zeros, but did not yet use them in any way. but be careful: do not
120706 9:19:40 InnoDB: remove old data files which contain your precious data!
120706 9:19:40 [ERROR] Plugin 'InnoDB' init function returned error.
120706 9:19:40 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
120706 9:19:40 [ERROR] Unknown/unsupported storage engine: InnoDB
120706 9:19:40 [ERROR] Aborting
120706 9:19:40 [NOTE] /usr/sbin/mysqld: Shutdown complete
120706 09:19:40 mysqld_safe mysqld from pid file /var/lib/mysql/python.centos.pid ended
探す
InnoDB: ロックできません。/ibdata1, error: 11
のワークアラウンドは
http://cglreport.zhenhua.info/2008/08/mysql-error-unable-to-lock-ibdata1.html
解決策
元のファイル(ibdata1, ib_logfile0, ib_logfile1...)をコピーしてください。
mv ibdata1 ibdata1.bak
cp -a ibdata1.bak ibdata1
......
操作方法
まず、/var/lib/mysql ディレクトリのファイルを見ることから始めます。
# cd /var/lib/mysql/
# ll
total 28812
-rw-rwxr-x. 1 mysql mysql 18874368 Jul 4 17:30 ibdata1
-rw-rwxr-x. 1 mysql mysql 5242880 Jul 6 09:03 ib_logfile0
-rw-rwxr-x. 1 mysql mysql 5242880 Jun 14 15:48 ib_logfile1
drwxr-xr-x. 2 mysql mysql 4096 Jun 14 14:39 mysql
-rw-rw----. 1 mysql mysql 107 Jul 6 09:03 mysql-bin.000001
-rw-rwxr-x. 1 mysql mysql 19 Jul 6 09:03 mysql-bin.index
drwxr-xr-x. 2 mysql mysql 4096 Jun 14 14:39 performance_schema
-rw-rwxr-x. 1 mysql root 108068 Jul 6 09:19 python.centos.err
-rw-r-xr-x. 1 root root 329 Jun 14 15:47 RPM_UPGRADE_HISTORY
-rw-r-xr-x. 1 mysql mysql 329 Jun 14 15:47 RPM_UPGRADE_MARKER-LAST
-rw-r-xr-x. 1 root root 0 Jul 5 16:56 -S
drwxr-xr-x. 2 mysql mysql 4096 Jun 14 16:06 test
上記3つのファイルibdata1、ib_logfile0、ib_logfile1はすべてmysqlユーザに属しています。
mysqlユーザーに切り替えて再度作業する
# su mysql
bash-4.1$ pwd
/var/lib/mysql
現在、/var/lib/mysql ディレクトリにいることを確認し、次のコマンドを実行します。
bash-4.1$ mv ibdata1 ibdata1.bak
bash-4.1$ cp -a ibdata1.bak ibdata1
bash-4.1$ mv ib_logfile0 ib_logfile0.bak
bash-4.1$ cp -a ib_logfile0.bak ib_logfile0
bash-4.1$ mv ib_logfile1 ib_logfile1.bak
bash-4.1$ cp -a ib_logfile1.bak ib_logfile1
bash-4.1$ exit
mysql ユーザーを終了し、lsof で mysql プロセスを検索して終了し、mysql サービスを再起動します。
# lsof -i:3306
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mysqld 3105 mysql 11u IPv4 15743 0t0 TCP *:mysql (LISTEN)
# kill -9 3105
# service mysql start
Starting MySQL. SUCCESS!
mysqlにアクセスする
# mysql
Welcome to the MySQL monitor. commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.5.25-log MySQL Community Server (GPL)
Copyright (c) 2000, 2011, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
Other names may be trademarks of their respective owners.
Other names may be trademarks of their respective owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> show databases;
+ --------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.10 sec)
自動起動にmysqlを追加する
/sbin/chkconfig --level 35 mysql on
解決に成功しました。エラーERROR 2002 (HY000)の議論について。ソケット '/var/lib/mysql/mysql.sock' を介してローカルの MySQL サーバーに接続できない (2)。
http://www.iteye.com/topic/149100
http://cglreport.zhenhua.info/2008/08/mysql-error-unable-to-lock-ibdata1.html
関連
-
[解決済み】#1273 - 不明な照合順序:'utf8mb4_unicode_520_ci'
-
[解決済み] MySQL エラー 1093 - FROM 句で更新のターゲット テーブルを指定できません。
-
[解決済み] MySQLです。テーブルを作成できません (errno: 150)
-
[解決済み] 日付の挿入時にエラーが発生しました - 日付の値が正しくありません。
-
[解決済み] テーブルがクラッシュしたと判定されたため、修復する必要があります。
-
[解決済み] どのようにクエリは、各行のMySQLの2つのセルを乗算することができますか?
-
[解決済み] 警告 #1265 1行目の列 'pdd' でデータが切り捨てられました [閉鎖]。
-
mysql: コマンドの同期がとれない。
-
データベースのインポートでエラー1067 - 'フィールド名'のタイムゾーン問題の無効なデフォルト値(mysql 5.7での新しいエラー解決策)。
-
肝試し3万語❤️最もハードコアな丨Mysql知識体系、コマンドのフルセット【おすすめコレクション】❤️|電子書籍ストア「BookLive!
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】1052:フィールドリストの列「id」が曖昧である
-
[解決済み】mysql.plugin テーブルを開くことができません。mysql_upgradeを実行して作成してください。
-
[解決済み】MySQLのエラーコードです。MySQL WorkbenchでUPDATE中に1175のエラーが発生しました。
-
[解決済み] MySQLの グループ関数の無効な使用
-
[解決済み] mysqlとphpmyadminの違い?
-
[解決済み] zsh: コマンドが見つかりません: mysql
-
[解決済み] エラー 2013 (hy000)。認証パケットの読み取り'でMySQLサーバーへの接続を失いました。0
-
[解決済み] ビューの SELECT には FROM 句にサブクエリが含まれています。
-
[Err] 1273 - 不明な照合順序: 'utf8mb4_0900_ai_ci' これは、データベースにテーブルをインポートするときのエラーです、すべてのエラー
-
エラー 2005 (hy000)。不明なMySQLサーバーのホスト