رفع خطای This DNS record already exists در زمان ایجاد ساب دامنه پلسک

پلسک در مواقعی با مشکل عدم اضافه کردن ساب دامنه جدید و یا پارک جدید مواجه می شود و خطاهای زیر نمایش داده می شود.

Unable to create a new domain/subdomain or migrate/rename an existing domain/subdomain: DNS record already exists

DNS records for domain with such name already exist

The subdomain with such name already exists

This DNS record already exists.

Unable to create the subdomain test.example.com. because a DNS record pointing to the host test.example.com. already exists.

 

Unable to create the domain example.com because a DNS record pointing to the host example.com already exists.

 

Unable to set up the domain alias example.net because a DNS record pointing to the host example.net already exists.

 

DNS records for a domain with such a name already exist.

 

این خطا معمولا زمانی در پلسک رخ می دهد که شما یکبار دامنه یا ساب دامنه را اضافه کرده باشید و آن را حذف کرده باشید ولی رکورد آن در دیتابیس پلسک حذف نشده باشد.

برای رفع این مشکل باید طبق آموزش زیر عمل کنید:

 

رفع مشکل در ویندوزی:

با rdp به سرور ویندوزی خود متصل شوید و از دیتابیس پلسک بک  آپ گیری نمایید.

 

plesk db dump psa > C:\psa_backup.sql

 

cmd را باز کرده و به db متصل شود

plesk db

دستورات زیر را اجرا نمایید

delete from dns_recs where dns_zone_id in (select id from dns_zone where id not in (select dns_zone_id from domains) and id not in (select dns_zone_id from domain_aliases));
delete from dns_zone where id not in (select dns_zone_id from domains) and id not in (select dns_zone_id from domain_aliases);

از db خارج شوید

mysql> exit

 

رفع مشکل در لینوکسی:

پشتیبان از دیتابیس تهیه نمایید

plesk db dump psa > /root/psa_backup.sql

وارد دیتابیس شوید

plesk db

با استفاده از دستور زیر dns_zone_id دامنه را که نمی توان ایجاد کرد ، پیدا کنید. example.com را با نام دامنه واقعی جایگزین کنید:

mysql> select dns_zone_id,host from dns_recs where host like "%example.com%";
+-------------+---------------------+
| dns_zone_id | host |
+-------------+---------------------+
| 3 | www.example.com. |
| 3 | example.com. |
| 3 | ns2.example.com. |
| 3 | ns1.example.com. |
| 3 | example.com. |
| 3 | ftp.example.com. |
| 3 | example.com. |
| 3 | example.com. |
| 3 | _dmarc.example.com. |
| 3 | example.com. |
| 3 | mail.example.com. |
| 3 | ipv4.example.com. |
+-------------+---------------------+

با استفاده از dns_zone_id از خروجی بالا ، مطمئن شوید که نام دامنه یکسان است:

mysql> select id,name from dns_zone where id=3;
+----+-------------+
| id | name |
+----+-------------+
| 3 | example.com |
+----+-------------+

با استفاده از شناسه مراحل فوق ، سوابق را از جداول مربوطه حذف کنید. در صورت نیاز به حذف همهzone ها برای همه دامنه ها ، جایی که id = x را می توان حذف کرد:

mysql> delete from dns_zone where id=3;
mysql> delete from dns_recs where dns_zone_id=3;
mysql> delete from dns_refs where zoneId=3;

mysql> exit

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.