GNU/Linux >> Belajar Linux >  >> Cent OS

Tabel Kesalahan MySQL 'mysql.servers' tidak ada

Saat mencoba memberikan hak istimewa kepada pengguna MySQL di server CentOS 6.x biasa, saya menerima kesalahan ini di konsol mysql:Tabel Kesalahan MySQL 'mysql.servers' tidak ada

Saya terkejut… hal pertama yang muncul di benak saya adalah ‘database mysql corrupt’, dan memang itulah masalahnya. Tabel mysql.user pasti ada pada instalasi MySQL normal, jadi ada sesuatu yang kacau pada instalasi MySQL.

Memperbaiki Tabel Kesalahan MySQL 'mysql.servers' tidak ada kesalahan

Coba periksa apakah mysql.user ada

use mysql;
select * from user;

Hal pertama yang saya coba untuk memperbaiki masalah ini adalah menginstal ulang database mysql untuk membuat ulang semua tabel default mysql yang memulai MYSQL tanpa hak istimewa:

/usr/bin/mysql --skip-grant-tables &
mysql -u root

Kemudian coba jalankan ini sebagai root dari terminal Linux:

mysql_install_db

Setelah itu, matikan proses MySQL sebelumnya dan mulai ulang MYSQL secara normal:

ps -aux | grep mysql

Dan matikan -9 semua prosesnya.

service mysqld restart

Jika itu tidak menyelesaikan masalah Anda, periksa izin direktori data MySQL Anda, mungkin mereka berubah entah bagaimana.

Opsi terakhir:buat dump mysql lengkap dari setiap database , hapus mysql sepenuhnya dan instal ulang dari awal.

Buat cadangan dari setiap basis data:

MYSQLPASS=putyourmysqlrootpasshere
for i in $(mysql -u root -p$MYSQLPASS -Bse 'show databases'); do mysqldump --opt -p$MYSQLPASS $i -c> /root/mysql-dump-$i.sql; done

Periksa apakah cadangan Anda baik-baik saja:

ls -alh /root/mysql-dump*

Hapus server MySQL

yum remove mysql-server
rm /var/lib/mysql -rf

Instal ulang MYSQL Server

yum install mysql-server
service mysql start

Buat semua database secara manual, sama seperti hak istimewa dan pengguna mysql, lalu buang kembali cadangan .sql Anda ke setiap database.

Kesimpulan

Seperti yang Anda lihat, satu-satunya solusi yang saya temukan untuk ini adalah menghapus mysql sepenuhnya dan menginstal ulang dari awal. Namun ... apakah Anda tahu ada perbaikan lain untuk Tabel Kesalahan MySQL 'mysql.servers' tidak ada kesalahan?

Bacaan lebih lanjut:

  • MySQL Tidak Dapat Menemukan Tabel 
Tabel Kesalahan MySQL 'mysql.servers' tidak ada Terakhir diubah:1 Desember 2016 oleh Esteban Borges
Cent OS
  1. Memuat Server Web Seimbang dan Server MySQL

  2. Cara Memperbaiki Tabel Database Mysql yang Rusak

  3. Kesalahan fatal:Tidak dapat membuka dan mengunci tabel hak istimewa:Tabel 'mysql.host' tidak ada

  1. Kesalahan 1130 Menghubungkan Ke Mysql Di Server Ubuntu 12.04?

  2. KESALAHAN:Prosedur Tersimpan Tidak Ada

  3. Pulihkan database mysql - mysql/mysqldump memberikan tabel <database>.<tablename> tidak ada (1146)

  1. Jatuhkan tabel di MySQL

  2. MySQL - ERROR 1045 - Akses ditolak

  3. Kesalahan pernyataan pthread mutex