Як встановити mysql на Ubuntu 16.04


8

Я дотримуюся цього цифрового підручника для океану для Ubuntu 14.04, щоб встановити mysql на Ubuntu 16.04 для моїх проектів Rails. Я, можливо, неправильно, припускав, що процедура буде однаковою.

Однак, коли я запускаю команду sudo mysql_install_db, я отримую таку помилку:

2016-06-15 18:40:36 [WARNING] mysql_install_db is deprecated. Please consider switching to mysqld --initialize
2016-06-15 18:40:36 [ERROR]   The data directory needs to be specified.

Як я можу завершити налаштування? Я успішно дотримувався тієї самої процедури кілька разів у минулому на Ubuntu 14.04.


4
Що робити, якщо ви робите те, що це пропонує mysqld --initialize:?
Jos

2
@Jos Він дає таку помилку:mysqld: Can't create directory '/var/lib/mysql/' (Errcode: 17 - File exists) 2016-06-15T14:00:28.483462Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). 2016-06-15T14:00:28.484374Z 0 [ERROR] Aborting
Jawad Khawaja

2
Ви, ймовірно, зможете обійти цю проблему, видаливши каталог /var/lib/mysqlта повторно повторивши --initializeпроцес.
Джос

1
Дякую тобі за це! Я побоювався, що це може спричинити проблеми, оскільки воно містить ряд файлів. Але це спрацювало. Я завершив установку зараз.
Jawad Khawaja

@Jos Ви повинні залишити свій коментар як відповідь.
Байт-командир

Відповіді:


9

Установка сервера MySQL включає приблизно три кроки: 1) розпакування програмного забезпечення; 2) створення бази даних за замовчуванням; 3) створення користувача / пароля за замовчуванням (і зберігання цього в базі даних).

Якщо ви випадково втратите файли бази даних (як правило, знаходяться в /var/lib/mysql), ви можете запустити знову, не повністю перевстановлюючи серверний пакет. Це робиться за допомогою команди mysqld --initialize. Якщо запустити цю команду, поки база даних вже є, вона повідомить про помилку ("Файл існує") і не буде намагатися перезаписати базу даних. Однак якщо ви не впевнені в тому, що процедура встановлення завершена правильно, добре видалити каталог /var/lib/mysqlі повторно ініціалізувати базу даних.

--initializeПрапор змусить MySQL для створення кореневого користувача і випадковий пароль, який потім записується в файл журналу. Для отримання додаткової інформації див man mysqld.


5

Спочатку перевірте версію Mysql за допомогою mysql --version.

Якщо у вас версія 5.7.6 або новіша, каталог даних буде ініціалізований автоматично і не потрібно запускати sudo mysql_install_db.

більше інформації про встановлення mysql на сервері DigitalOcean можна знайти на https://www.digitalocean.com/community/tutorials/how-to-install-mysql-on-ubuntu-14-04

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.