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'.

หากฉันต้องการโพสต์สิ่งอื่นโปรดแจ้งให้เราทราบ ...

UPDATE:หลังจากที่ได้ลองความคิดเห็นของJérémy Munoz แล้ว 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'.

UPDATE:หลังจากทำงาน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 /
Andrew Smith เมื่อ

ฉันควรตั้งค่าการอนุญาตใด
ปราณณัฏฐณัฐปิติ

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

@ JérémyMunozฉันลองวิธีการแก้ปัญหาของคุณ มันยังไม่เริ่ม ฉันอัปเดตคำถามด้วยข้อผิดพลาดใหม่
ปราณณัฏฐณัฐปิติ

กรุณาแสดงไฟล์ mysql / mariadb ของ/etc/mysql/my.cnfคุณ
Mikhail Khirgiy

คำตอบ:


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สิ่งนั้นด้วยตนเอง
ราณัฏฐ์นูตะลาปาติ

สิ่งนี้ใช้ได้กับฉัน
Sairaj Gadekar

1

ประสบปัญหาเดียวกัน สิ่งนี้ได้รับการแก้ไขหลังจากทำตามขั้นตอนด้านล่าง:

  1. ถอนการติดตั้งแพ็คเกจ mariadb maridb-server
  2. ลบไดเร็กทอรี / var / lib / mysql
  3. ติดตั้งแพ็คเกจ Mariadb เซิร์ฟเวอร์ Mariadb ใหม่
  4. systemct เริ่ม 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

หากฉันสามารถช่วยคนที่ไม่ได้แก้ปัญหาด้วยวิธีแก้ไขปัญหาด้านบน:

ฉันยังมีปัญหานี้และมันมาจากการกำหนดค่าที่ไม่ดีในไฟล์ปรับแต่งในละครนี้: / etc / apache2 / sites-available /

ดังนั้นตรวจสอบไฟล์กำหนดค่าเพื่อดูว่าไม่มีข้อผิดพลาดของสคริปต์หรือไม่


การกำหนดค่าผิดพลาดใน Apache จะส่งผลให้ MariaDB ไม่สามารถเริ่มต้นได้อย่างไร
womble
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.