2016-07-06 7 views
0

root権限を持たずにmysqlを起動するにはどうすればいいですか? 私はエラー以下root特権を持たないMysql

host13:~/JS> mysqld start 
160706 18:06:31 [Warning] Can't create test file /tool/p64/.package/mysql-5.5.21/data/host13.lower-test 
160706 18:06:31 [Warning] Can't create test file /tool/p64/.package/mysql-5.5.21/data/host13.lower-test 
mysqld: Table 'mysql.plugin' doesn't exist 
160706 18:06:31 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it. 
160706 18:06:31 InnoDB: The InnoDB memory heap is disabled 
160706 18:06:31 InnoDB: Mutexes and rw_locks use GCC atomic builtins 
160706 18:06:31 InnoDB: Compressed tables use zlib 1.2.3 
160706 18:06:31 InnoDB: Initializing buffer pool, size = 128.0M 
160706 18:06:31 InnoDB: Completed initialization of buffer pool 
160706 18:06:31 InnoDB: Operating system error number 30 in a file operation. 
InnoDB: Error number 30 means 'Read-only file system'. 
InnoDB: Some operating system error numbers are described at 
InnoDB: http://dev.mysql.com/doc/refman/5.5/en/operating-system-error-codes.html 
InnoDB: File name ./ibdata1 
InnoDB: File operation call: 'create'. 
InnoDB: Cannot continue operation. 
+0

読み取り専用ファイルシステムは権限の問題ではありません。これは、ファイルシステムが 'ro'オプションでマウントされているので、誰もそれに書き込むことができないことを意味します。 – Barmar

答えて

1

を取得していますあなたが書くことができますどこにMySQLデータディレクトリを移動し、/etc/my.cnfでそれを指定することができます(または、おそらくお使いのシステムのデフォルト設定に応じて、別の場所では)、パラメータがdatadirです。あなたのデータディレクトリがまだ初期化されていない場合

あなたは、このようにそれらを作成することができます(その場合にはmysqldは特権テーブルを逃す文句を言うでしょう):

# Setup DB 
mysql_install_db --datadir=<FULL PATH TO STORE DB FILES> 

# Start server 
mysqld --datadir=<FULL PATH TO STORE DB FILES> 

# Shutdown server 
mysqladmin -u root shutdown 

mysql_install_db --datadir=$path_to_new_datadir 
+0

ありがとう..私はこの提案でいくつかの進歩を遂げることができました。 しかし、ヒット '[エラー] mysql.pluginテーブルを開くことができません。 mysql_upgradeを実行して作成してください。 [ERROR]致命的なエラー:権限テーブルをオープンしてロックできません: 'mysql.host'テーブルが存在しません。 ' ここで私を助けるお勧めはありますか? – Jean

+0

ソリューションは編集に含まれています。 –

0

は答えをまとめます注:
datadirの後の= - コマンドが失敗しない場合
2.フルパスシャウルdを使用する

関連する問題