Это из моего докера:
db:
image: mysql
ports:
- "3306:3306"
environment:
MYSQL_DATABASE: myDb
MYSQL_USER: user
MYSQL_PASSWORD: test
MYSQL_ROOT_PASSWORD: test
volumes:
- ./dump:/docker-entrypoint-initdb.d
- persistent:/var/lib/mysql
Когда я меняю своего пользователя и оба пароля на «root», моя база данных создается, но она пуста. Когда я оставляю учетные данные, как указано выше, мой сценарий .sql внутри каталога / dump заполняет базу данных, как и положено. Как изменение учетных данных влияет на внедрение данных и как это исправить?






Из документации (https://hub.docker.com/_/mysql/) ...
MYSQL_USER, MYSQL_PASSWORD
These variables are optional, used in conjunction to create a new user and to set that user's password. This user will be granted superuser permissions (see above) for the database specified by the MYSQL_DATABASE variable. Both variables are required for a user to be created.
Итак, это для создания нового пользователя с паролем. MYSQL_ROOT_PASSWORD - это пароль для пользователя root MySQL.
MYSQL_ROOT_PASSWORD This variable is mandatory and specifies the password that will be set for the MySQL root superuser account. In the above example, it was set to my-secret-pw.
Я не особо разбирался в этом, но считаю, что имя пользователя и пароль не могут совпадать. И они оба не могут совпадать с паролем root.