Error: DNSZone::Table::select() failed: no such row in the table
Error: DNSZone::Table::select() failed: no such row in the table hatasıyla plesk üzerinde sık sık karşılaşmak mümkün.
Bu sorunun çözümü aslında oldukça basit.
Aşağıdkai işlemleri yaparak bu sorundan kurtulabilirsiniz.
1. Komut satırını açın ve aşağıdaki iki satırı çalıştırın. Sizden şifre istediği zaman plesk admin şifresini yazmanız gerekiyor.
cd %plesk_dir%\Mysql\bin
mysql -uadmin -p -P 8306 psa
2. Aşağıdaki komutu çalıştırın. Bu sorgu sonucunda dns kayıtları hatalı olan alan adları listelenecek.
SELECT domains.name FROM domains LEFT JOIN dns_zone ON domains.dns_zone_id = dns_zone.id WHERE dns_zone.id IS NULL;
+——————————–+
| name |
+——————————–+
| hatali.halilzade.com |
+——————————–+
1 rows in set (0.00 sec)
3. Bu komutu çalıştırın.
select id,name from dns_zone;
4. Bu komutu çalıştırın.
select dns_zone_id,name from domains;
3 ve 4 numaralı komut satırlarını çalıştırdığınız zaman sorgu sonuçlarında 3 numaralı sorguda olmayıpda 4 numaralı sorguda çıkan sonuçlar olacak. Örnek olarak aşağıdaki sonuçlarda 3 ID numaralı kayıt “hatali.halilzade.com” sorunlu görünüyor.
mysql> select id,name from dns_zone;
+—-+————————————+
| id | name |
+—-+————————————+
| 2 | halilzade.com |
| 5 | altdomain.halilzade.com |
+—-+————————————+
2 rows in set (0.00 sec)
mysql> select dns_zone_id,name from domains;
+————-+————————————+
| dns_zone_id | name |
+————-+————————————+
| 2 | halilzade.com |
| 3 | hatali.halilzade.com |
| 5 | altdomain.halilzade.com |
+————-+————————————+
3 rows in set (0.00 sec)
mysql>
5. Sorunlu altalan adınıda tespit ettiğimize göre tek kalan aşağıdaki kodu kendinize uyarlayarak çalıştırmak ve dns servisini yeniden başlatmaktır.
INSERT INTO dns_zone SET id=928, name=’hatali.halilzade.com’, displayName=’hatali.halilzade.com’, email=’mail@mail.com’;