メインコンテンツへ移動

MySQL 初期パスワード変更手順

ヒント
  • rootパスワードの例として tC9S86SFWxga を記載していますが、実際の設定では必ず変更してください。
  • 互換性およびセキュリティ確保のため、パスワードには「$」「&」「!」「@」などの特殊文字は使用しないでください。これらの記号は正規表現の解析に影響し、コンテナへの適切な引き渡しができない場合があります。ハイフン「-」やアンダースコア「_」をご利用ください。
  • 作業前にデータのバックアップを実施いただくことを推奨します。
  1. scコンテナに入り、MySQLへログインします
docker exec -it $(docker ps | grep sc | awk '{print $1}') bash -c 'mysql -uroot -p123456 -h127.0.0.1'
  1. MySQLのパスワードを変更します
GRANT ALL ON *.* to root@'%' IDENTIFIED BY 'tC9S86SFWxga';
  1. docker-compose.yamlファイルを修正し、環境変数とポートマッピングを追加します

docker-compose.yamlのデフォルトパス: /data/hap/script/docker-compose.yaml
appサービスのセクションのenvironmentに新しいMySQLパスワードを示す環境変数 ENV_MYSQL_PASSWORD を追加してください。

ENV_MYSQL_PASSWORD: "tC9S86SFWxga"

scサービスのportsセクションにMySQLの3306ポートをコンテナ外へマッピングします(MySQLを外部公開しない場合、ポートマッピングは不要です)。

- 3306:3306
docker-compose.yaml の設定例
version: '3'
services:
app:
image: nocoly/hap:7.5.1
environment: &app-environment
ENV_ADDRESS_MAIN: "https://example.domain.com"
ENV_APP_VERSION: "7.5.1"
ENV_API_TOKEN: "******"
ENV_MYSQL_PASSWORD: "tC9S86SFWxga" # 新規に変数追加し、実際のパスワードへ変更
ports:
- 8880:8880
volumes:
- ../data:/data/hap/data
sc:
image: nocoly/sc:3.2.0
environment:
<<: *app-environment
ports:
- 3306:3306 # MySQLのポートマッピング。MySQL外部公開が不要な場合は本設定は不要です
volumes:
- ./volume/data/:/data/
  1. Install Managerディレクトリでマイクロサービスを再起動し、設定を反映します
bash service.sh restartall