MySQL (MariaDB) не запускається [закрито]


15

Я запускаю Arch Linux 4.8.4-1 на 64-бітній установці. Я встановив MariaDB через pacman. Коли я намагаюся почати це systemctl start mysqld, це дає мені

Job for mariadb.service failed because the control process exited with error code.
See "systemctl status mariadb.service" and "journalctl -xe" for details.

Вихід systemctl status mariadb.serviceє

● mariadb.service - MariaDB database server
   Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
   Active: failed (Result: exit-code) since Wed 2016-11-02 16:55:12 IST; 3min 6s ago
  Process: 5123 ExecStart=/usr/sbin/mysqld $MYSQLD_OPTS $_WSREP_NEW_CLUSTER $_WSREP_START_POSITION (code=exited, status=1/FAILURE)
  Process: 5070 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= ||   VAR=`/usr/bin/galera_recovery`; [ $? -eq 0 ]   && systemctl set
  Process: 5067 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
 Main PID: 5123 (code=exited, status=1/FAILURE)
   Status: "MariaDB server is down"

Nov 02 16:55:11 pranav-laptop systemd[1]: Starting MariaDB database server...
Nov 02 16:55:12 pranav-laptop mysqld[5123]: 2016-11-02 16:55:12 140082509282496 [Note] /usr/sbin/mysqld (mysqld 10.1.18-MariaDB) starting as process 5
Nov 02 16:55:12 pranav-laptop mysqld[5123]: 2016-11-02 16:55:12 140082509282496 [Warning] Can't create test file /var/lib/mysql/pranav-laptop.lower-te
Nov 02 16:55:12 pranav-laptop mysqld[5123]: [90B blob data]
Nov 02 16:55:12 pranav-laptop systemd[1]: mariadb.service: Main process exited, code=exited, status=1/FAILURE
Nov 02 16:55:12 pranav-laptop systemd[1]: Failed to start MariaDB database server.
Nov 02 16:55:12 pranav-laptop systemd[1]: mariadb.service: Unit entered failed state.
Nov 02 16:55:12 pranav-laptop systemd[1]: mariadb.service: Failed with result 'exit-code'.

Якщо мені потрібно ще щось опублікувати, дайте мені знати ...

ОНОВЛЕННЯ: Після спроби коментаря Джері Муноза, mysql все ще не запускається, але я отримую іншийsystemctl status mariadb.service

● mariadb.service - MariaDB database server
   Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
   Active: failed (Result: exit-code) since Wed 2016-11-02 21:03:24 IST; 4min 7s ago
  Process: 14350 ExecStart=/usr/sbin/mysqld $MYSQLD_OPTS $_WSREP_NEW_CLUSTER $_WSREP_START_POSITION (code=exited, status=1/FAILURE)
  Process: 14296 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= ||   VAR=`/usr/bin/galera_recovery`; [ $? -eq 0 ]   && systemctl se
  Process: 14294 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
 Main PID: 14350 (code=exited, status=1/FAILURE)

Nov 02 21:03:24 pranav-laptop mysqld[14350]: 2016-11-02 21:03:24 140412958252224 [ERROR] Could not open mysql.plugin table. Some plugins may be not lo
Nov 02 21:03:24 pranav-laptop mysqld[14350]: 2016-11-02 21:03:24 140412958235392 [Warning] Failed to load slave replication state from table mysql.gti
Nov 02 21:03:24 pranav-laptop mysqld[14350]: 2016-11-02 21:03:24 140412362684160 [Note] InnoDB: Dumping buffer pool(s) not yet started
Nov 02 21:03:24 pranav-laptop mysqld[14350]: 2016-11-02 21:03:24 140412958252224 [ERROR] Can't open and lock privilege tables: Table 'mysql.servers' d
Nov 02 21:03:24 pranav-laptop mysqld[14350]: 2016-11-02 21:03:24 140412958252224 [Note] Server socket created on IP: '::'.
Nov 02 21:03:24 pranav-laptop mysqld[14350]: 2016-11-02 21:03:24 140412958252224 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mys
Nov 02 21:03:24 pranav-laptop systemd[1]: mariadb.service: Main process exited, code=exited, status=1/FAILURE
Nov 02 21:03:24 pranav-laptop systemd[1]: Failed to start MariaDB database server.
Nov 02 21:03:24 pranav-laptop systemd[1]: mariadb.service: Unit entered failed state.
Nov 02 21:03:24 pranav-laptop systemd[1]: mariadb.service: Failed with result 'exit-code'.

ОНОВЛЕННЯ: Після запуску mysql_install_dbя отримую цю помилку:

FATAL ERROR: Could not find ./bin/my_print_defaults

If you compiled from source, you need to either run 'make install' to
copy the software into the correct location ready for operation.
If you don't want to do a full install, you can use the --srcddir
option to only install the mysql database and privilege tables

If you are using a binary release, you must either be at the top
level of the extracted archive, or pass the --basedir option
pointing to that location.

The latest information about mysql_install_db is available at
https://mariadb.com/kb/en/installing-system-tables-mysql_install_db

/etc/mysql/my.cnf


Здається, вам не вистачає дозволів на / var / lib / mysql /
Ендрю Сміт

Які дозволи я повинен встановити?
Пранов Нуталапаті

chown -R mysql. / var / lib / mysql /
Jérémy Munoz

@ JérémyMunoz Я спробував ваше рішення. Він все ще не починається. Я оновив питання новою помилкою.
Пранов Нуталапаті

Будь ласка, покажіть свій файл mysql / mariadb з файлу /etc/mysql/my.cnf.
Михайло Хиргій

Відповіді:


20

Якщо у вашій базі даних немає реальних даних, очистіть все в /var/lib/mysql.

Після цього спробуйте запустити команду mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysqlдля ініціалізації каталогу баз даних.


яка методологія цієї відповіді?
kittygirl

Чи є ще щось, щоб спробувати, якщо це не працює?
moeiscool

@kittygirl Привіт, мета цього - відтворити структуру даних MySQL або тому, що вона заплуталася, або тому, що вона не існувала. Або принаймні, саме так я це розумію.
Пранів Нуталапаті


1

У мене була така ж проблема з зареєстрованими пакетами Ubuntu 18.04m, здається, неможливо запуститись або ще ...

Я вирішив, додавши правильний список пакунків та підпис на цьому веб-сайті .

sudo apt-get install software-properties-common
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64,arm64,ppc64el] http://mariadb.mirrors.ovh.net/MariaDB/repo/10.3/ubuntu bionic main'
sudo apt update
sudo apt install mariadb-server

et voila ..


Гм, це цікаво ... Отже, у вас виникли проблеми з установкою для початку? Linux думав, що він встановлений, коли насправді цього не було? Це насправді дивно ... Для мене те, що закінчилося, було те, що мій процес налаштування не завершився, тому мені довелося зробити це вручну mysql_install_db.
Пранів Нуталапаті

це працювало для мене
Сайрай Гадекар

1

Зіткнувся з тією ж проблемою. Це вирішено після виконання наступних кроків:

  1. Видалено пакети maridb-сервера mariadb
  2. Видалено каталог / var / lib / mysql.
  3. Перевстановлено пакети серверів Mariadb, Mariadb.
  4. systemct start mariadb; systemctl включити mariadb

(проблема вирішена).


0
cd /var/lib/mysql
ls
rm -r *
mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysql
systemctl start mysqld
systemctl start mysql.service
systemctl start mariadb
mysql

Тоді це працює чудово


0

Якщо я можу допомогти людям, які не вирішили свою проблему, рішеннями вище:

У мене також була ця проблема, і вона виникла з неправильної конфігурації у файлі config цього репертуару: / etc / apache2 / sites-available /

Тому перевірте конфігураційні файли, щоб перевірити, чи не є помилка сценарію.


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