У меня есть новая установка Kubuntu 19.10 и 8.0.18-0ubuntu0.19.10.1 Сервера Mysql
Я пытался запустить mysql с команды ниже:
sudo mysqld --init-file=/home/da/dainit &
У меня есть init файл под/home/da/dainit, содержит, и попробованный варьировался выбора как
ALTER USER 'root'@'localhost' IDENTIFIED BY 'abc';
или
UPDATE mysql.user SET authentication_string = PASSWORD('p@ssw0rd')
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;
(Хотя я знал, что это не работает на mysql 8.x),
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root-password';
Ничто не работало.
Файл Init имеет сообщение об ошибке как это:
2020-01-21T06:48:13.933707Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.18-0ubuntu0.19.10.1) starting as process 8530
2020-01-21T06:48:14.430914Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
2020-01-21T06:48:14.455683Z 0 [ERROR] [MY-013129] [Server] A message intended for a client cannot be sent there as no client-session is attached. Therefore, we're sending the information to the error-log instead: MY-000029 - File '/home/da/dainit' not found (OS errno 13 - Permission denied)
2020-01-21T06:48:14.455730Z 0 [ERROR] [MY-010455] [Server] Failed to open the bootstrap file /home/da/dainit
2020-01-21T06:48:14.455742Z 0 [ERROR] [MY-010119] [Server] Aborting
2020-01-21T06:48:15.513739Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.18-0ubuntu0.19.10.1) (Ubuntu).
Я применил команду
sudo chown mysql:adm /home/da/dainit
чем получил ошибки:
2020-01-21T09:59:17.896016Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.18-0ubuntu0.19.10.1) starting as process 5731
2020-01-21T09:59:18.441042Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
2020-01-21T09:59:18.443337Z 0 [ERROR] [MY-010273] [Server] Could not create unix socket lock file /var/run/mysqld/mysqld.sock.lock.
2020-01-21T09:59:18.443715Z 0 [ERROR] [MY-010268] [Server] Unable to setup unix socket lock file.
2020-01-21T09:59:18.444373Z 0 [ERROR] [MY-010119] [Server] Aborting
2020-01-21T09:59:19.473693Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.18-0ubuntu0.19.10.1) (Ubuntu).
Файл '/home/da/dainit' не найденный (ОС errno 13 - Разрешение отклонено
Это должно быть довольно легко: тот файл не принадлежит Вашему mysql пользователю. Mysql имеет своего собственного пользователя и требует файлов, к которым Вы хотите получить доступ для владения тому пользователю.
sudo chown mysql:adm /home/da/dainit
зафиксировал бы его. (mysql:adm значения по умолчанию; если Вы изменились, они изменяются на то, в чем Вы нуждаетесь),