The system received an error from the “MySQL” database “mysql”: ER_PASSWORD_NO_MATCH (Can’t find any matching row in the user table) hatası ve çözümü

Genellikle cpanel de mysql veritabanı ve kullanıcısı oluşturmaya çalışırken aşağıdaki hatayı alabilirsiniz.

The system received an error from the “MySQL” database “mysql”: ER_PASSWORD_NO_MATCH (Can’t find any matching row in the user table)

Bu durumda yapmanız gereken şey my.cnf dosyanızda skip-name-resolve satırını kapatmanız.

nano /etc/my.cnf

skip-name-resolve

#skip-name-resolve

service mysql restart

Tekrar mysql oluşturduğunuzda bu hatayı almayacaksınız.

Ayhan ARDA

Mysql Strict Mode Aktif mi , Pasif mi?

Mysql Strict Mode Aktif mi , Pasif mi?

Bunu mysql sunucunuzda aşağıdaki sorguyu çalıştırarak öğrenebilirsiniz.

mysql> SELECT @@sql_mode;
+——————————————–+
| @@sql_mode |
+——————————————–+
| STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION |
+——————————————–+
1 row in set (0.00 sec)

Yukarıda aktif gözüküyor.

Bunu doğrulamanın bir diğer yolu ise aşağıdaki sorgudur.

mysql> SHOW VARIABLES LIKE ‘%SQL%’;
Connection id:    159718988
Current database: *** NONE ***

+————————–+——————————————–+
| Variable_name            | Value                                      |
+————————–+——————————————–+
| sql_auto_is_null         | OFF                                        |
| sql_big_selects          | ON                                         |
| sql_big_tables           | OFF                                        |
| sql_buffer_result        | OFF                                        |
| sql_log_bin              | ON                                         |
| sql_log_off              | OFF                                        |
| sql_low_priority_updates | OFF                                        |
| sql_max_join_size        | 18446744073709551615                       |
| sql_mode                 | STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION |
| sql_notes                | ON                                         |
| sql_quote_show_create    | ON                                         |
| sql_safe_updates         | OFF                                        |
| sql_select_limit         | 18446744073709551615                       |
| sql_slave_skip_counter   | 0                                          |
| sql_warnings             | OFF                                        |
+————————–+——————————————–+
15 rows in set (0.01 sec)

Kapatmak için my.cnf ya da my.ini dosyanızı açınız.

sql-mode=”STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION”

Yukarıdaki gibi bir satır görüyor iseniz bunu aşağıdaki gibi değiştirip mysql servisini restart edebilirsiniz.

sql-mode=”NO_ENGINE_SUBSTITUTION”

Eğer böyle bir satır yok ise kendiniz aşağıdaki satırı ekleyip servisi restart edebilirsiniz.

sql_mode=NO_ENGINE_SUBSTITUTION

Ayrıca belirtmekte fayda var ki , eğer strict mode aktif çalışıyor iseniz mysql güvenliğiniz daha üst seviyededir. Fakat sunucu üzerinde birden çok fazla db çalıştırıyor iseniz açmanızda bir sakınca bulunmamaktadır. Bu modda MySQL’e has bir çok özellik veritabanı uyumluluğu amacıyla devre dışı bırakılır. Daha doğru sorgular yazmanız ve birçok farklı nedenden dolayı strict mode tavsiye edilir.

Ayhan ARDA

Plesk Panelde Table ‘mysql.servers’ doesn’t exist hatası

Table ‘mysql.servers’ doesn’t exist hatası çözümü;

Ssh ile erişerek aşağıdaki komutları uygulayınız.

[root@webhostingsitesi.com]#mysql -uadmin -p`cat /etc/psa/.psa.shadow` -h localhost

mysql> use mysql;

mysql> CREATE TABLE `servers` ( `Server_name` char(64) NOT NULL, `Host` char(64) NOT NULL, `Db` char(64) NOT NULL, `Username` char(64) NOT NULL, `Password` char(64) NOT NULL, `Port` int(4) DEFAULT NULL, `Socket` char(64) DEFAULT NULL, `Wrapper` char(64) NOT NULL, `Owner` char(64) NOT NULL, PRIMARY KEY (`Server_name`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT=’MySQL Foreign Servers table’;

Ayhan ARDA

KOD :

CREATE TABLE `servers` ( `Server_name` char(64) NOT NULL, `Host` char(64) NOT NULL, `Db` char(64) NOT NULL, `Username` char(64) NOT NULL, `Password` char(64) NOT NULL, `Port` int(4) DEFAULT NULL, `Socket` char(64) DEFAULT NULL, `Wrapper` char(64) NOT NULL, `Owner` char(64) NOT NULL, PRIMARY KEY (`Server_name`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='MySQL Foreign Servers table';

 

 

Cpanel cpmysqladmin had an unknown error hatası çözümü

Cpanel üzerinden veritabanı silerken ya da oluştururken cpmysqladmin had an unknown error şeklinde bir hata alır iseniz ssh üzerinden aşağıdaki komutları sıra ile çalıştırmanız durumu giderecektir.

/scripts/checkperlmodules –full –force
/scripts/mysqlup –force
/scripts/perlinstaller –force DBD::mysql
/scripts/rpmup –force;/scripts/sysup –force; /scripts/upcp –force

SSH üzerinden mysql import ve export işlemleri

Veritabanınızın yedeğini almak için ,

mysqldump -u kullanıcıadı -pşifre databaseadı > yedek.sql

örnek : mysqldump -u ayhan -p12345 ayhandb > sqlyedek.sql

Veritabanınızı ssh üzerinden import etmek için,

mysql -u kullanıcıadı -pşifre databaseadı < yedek.sql

örnek : mysql -u ayhan -p12345 ayhandb < sqlyedek.sql