Windows 10 上に Scoop でインストールした MySQL 5.7 サーバを起動する手順

Windows 10 上に Scoop(https://scoop.sh/)で MySQL 5.7 をインストールして、MySQL サーバを起動するまでの手順を記載する。
MySQL サーバは、サービスに登録しない前提とする。
Scoop のインストール手順は、割愛する。

・ Scoop に「versions」バケットを追加

scoop bucket add versions

・ MySQL 5.7 をインストール

確認した時点では、バージョン 5.7.29 であった。
scoop update
scoop install mysql57

・ MySQL 設定ファイルを修正

「ユーザ名」は、適切な値に変更すること。
%USERPROFILE%\scoop\apps\mysql57\current\my.ini

[mysqld]
datadir=C:/Users/ユーザ名/scoop/persist/mysql57/data
log_syslog=0
explicit_defaults_for_timestamp=1
innodb_flush_method=normal
[client]
user=root

・ データベースを初期化

%USERPROFILE%\scoop\persist\mysql57\data ディレクトリ内に、ファイルがあった場合は、すべて削除してから、以後の手順を行う。

mysqld --initialize-insecure

・ データベースを起動

mysqld --console
以下、発生した問題について記載する。

・ 「innodb_flush_method=normal」について

この件に関しては、当方の環境が一般的とは言えないため、その他の環境で必ず発生するわけではない。
原因はわからないが、ソフトウェア RAID との相性あたりがあやしい。
発端は、データベースの初期化で失敗する事象が発生したことであった。
データベース初期化コマンドを実行後、data ディレクトリの BLACK.err ファイルに以下のエラーが出力されていた。

2020-03-14T05:25:57.081780Z 0 [ERROR] InnoDB: Operating system error number 87 in a file operation.
2020-03-14T05:25:57.085927Z 0 [ERROR] InnoDB: File .\ib_logfile101: 'aio write' returned OS error 187. Cannot continue operation
2020-03-14T05:25:57.089968Z 0 [ERROR] InnoDB: Cannot continue operation.

上記以外に「innodb_use_native_aio=0」という設定をしてみたが、効果がなかった。
「innodb_flush_method」に設定可能な値は、「async_unbuffered」(デフォルト値)、「normal」および、「unbuffered」であり、「unbuffered」の場合は、効果がなく、最終的に効果があったのが、「normal」であった。

・ 「log_syslog=0」について

この設定は、MySQL のログを、Windows Event に出力しないようにする設定となる。
Windows Event に出力するには、MySQL サーバを管理者権限で起動する必要がある。
今回は、サービス化せず、コマンドラインのみで利用する為、ログは、すべてコンソールに出力される。
ログには、以下のようなエラー出力となる。
2020-03-14T05:37:55.354648Z 0 [ERROR] Cannot open Windows EventLog; check privileges, or start server with --log_syslog=0

・ 「explicit_defaults_for_timestamp=1」について

ログに以下のような警告が出力されたため、それに従った。
2020-03-14T05:34:27.417026Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).