新しいCentOS 6.7(vm)にMySQL 5.7をインストールしました。
このコマンドでMySQLサービスを開始すると、次のようになります。
Sudo service mysqld start
起動せず、このエラーが発生します。
MySQLデータベースの初期化:2015-12-07T11:00:51.060114Z 0 [警告]
暗黙的なDEFAULT値を持つTIMESTAMPは非推奨です。使ってください
-explicit_defaults_for_timestampサーバーオプション(詳細については、ドキュメントを参照してください)。 2015-12-07T11:00:51.062305Z 0 [エラー]
-初期化が指定されましたが、データディレクトリにファイルが含まれています。中止します。 2015-12-07T11:00:51.062347Z 0 [エラー]中止します[失敗]
何が問題なのか知っていますか?
私も同じ問題に直面し、問題を解決しました。実行する必要があるのは:viエディターでmy.conf
ファイルを開き、[mysqld]
の下に行を追加します。
explicit_defaults_for_timestamp = 1
これで最初の問題が修正されます。 datadir
フィールドが指す場所のアクセス権を確認し、mysqlがアクセスできることを確認します。最悪の場合、それが指す場所の名前を変更します。例えば:
datadir=/var/lib/mysql1
以下の手順に従ってください
mysqld --initialize-insecure --user=username --datadir=datadir_path
--initialize-secure
を選択することもできますが、以前のバージョンのsecure_installation
と同様に、rootパスワードを要求されます。
datadir
が空の作成済みフォルダーであることを確認してください。そうでない場合、エラーがスローされ、次のコマンドを使用してmysql
を開始できます。
./bin/mysqld_safe --defaults-file=path to cnf file
または
serivce mysqld start
上記の手順に従ってエラーが発生した場合は、エラーログファイルを確認して共有し、起動したらrootパスワードを設定してください。
はい、(MySqlのバグだと思います)現在、同じ問題を解決しています。私の場合、MySQLデータベース用に個別のパーティション(マウントポイント)を作成しました。ディレクトリ「lost + found」が作成されました。それまたは他のファイルやフォルダを一時的に他の場所に移動し、/ var/lib/mysqlをクリーンアップする必要があります。この後、もう一度「Sudo service mysqld start」を実行すると、次のようなものが表示されます。
MySQLデータベースを初期化しています:[OK]
パスワード検証プラグインをインストールしています:[OK]
mysqldを起動しています:[OK]
幸運を。