آموزش تغییر Collation و Character Set دیتابیس MySQL

Collation و Character Set در MySQL چیست؟

Character Set مجموعه کاراکترهای قابل ذخیره‌سازی در دیتابیس است (مثل UTF-8). Collation قوانین مقایسه و مرتب‌سازی این کاراکترها را تعیین می‌کند. انتخاب صحیح Collation برای پشتیبانی از زبان فارسی و کاراکترهای چندبایتی بسیار مهم است.

چرا تغییر Collation لازم است؟

اگر کاراکترهای فارسی به‌صورت علامت سؤال (???) یا اشتباه نمایش داده می‌شوند، Collation نادرست تنظیم شده. برای وردپرس و سایت‌های فارسی، utf8mb4_unicode_ci بهترین انتخاب است.

تغییر Collation دیتابیس

ALTER DATABASE db_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

تغییر Collation تمام جداول

ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

برای تمام جداول یکجا:

SELECT CONCAT('ALTER TABLE ', TABLE_NAME, ' CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;')
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = 'db_name';

خروجی را کپی و اجرا کنید.

تغییر در phpMyAdmin

دیتابیس را انتخاب کنید. تب Operations را بزنید. در بخش Collation، مقدار utf8mb4_unicode_ci را انتخاب و Go بزنید.

تغییر در wp-config.php

برای وردپرس:

define('DB_CHARSET', 'utf8mb4');
define('DB_COLLATE', 'utf8mb4_unicode_ci');

Collation‌های رایج

utf8mb4_unicode_ci بهترین انتخاب برای فارسی و چندزبانه، utf8mb4_general_ci سریع‌تر اما دقت مرتب‌سازی کمتر، latin1_swedish_ci نامناسب برای فارسی.

هاست وردپرس میهن هاستینگ با utf8mb4 پیش‌فرض برای فارسی بهینه است. کانفیگ سرور شامل تنظیم Collation و MySQL. سرور مجازی برای دسترسی کامل به تنظیمات MySQL.

🌐 هاست بهینه فارسی

هاست وردپرس با utf8mb4 و پشتیبانی کامل فارسی.

مشاهده هاست وردپرس ←

ارسال دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

متن نظر
نام*:
رایانامه*:
وب سایت / وبلاگ: