تبدیل جداول و اطلاعات دیتابیس به utf8 در هاست
تبدیل جداول و اطلاعات دیتابیس به utf8 در هاست
در این آموزش نحوه ی تبدیل یک پایگاه داده ی Mysql به فرمت utf-8 را یاد خواهید گرفت . مواقعی مفید است که از کاراکتر های غیر رایج در سایت یا پایگاه داده ی خود در هاست استفاده کنید که برای نمایش صحیح آن کاراکتر ها لازمه پایگاه داده ی Mysql خود را به utf-8 تبدیل نمایید تا مشکلی در نمایش سایت نباشد. برای تبدیل پایگاه داده به utf-8 نیاز دارید از طریق محیط SSH به پایگاه داده ی مورد نظر دسترسی یابید.
اطلاعاتی که در فرآیند تبدیل پایگاه داده نیاز هست:
نام پایگاه داده ای که قصد تبدیل آن را دارید.
نام کاربر (username) و گذرواژه (user password) مربوط به Mysql User که از طریق آن به پایگاه داده ی مورد نظر جهت انجام تغییرات اتصال خواهید یافت..
بکاپ گیری از پایگاه داده:
قبل از اینکه تغییری در پایگاه داده ی خود ایجاد کنید حتما یک بکاپ از آن تهیه کنید.
برقراری دسترسی به پایگاه داده mysql:
توسط مراحل زیر می توانید به پایگاه داده ی خود از طریق SSH دسترسی ایجاد کنید. چندین دستور را به Mysql ارسال خواهید کرد. در نتیجه ی اجرای موفق دستورات ، در خروجی متنی مشابه “Query OK” مشاهده می کنید.
در صورتی که خروجی شما با “ERROR” آغاز شده باشد حتما دستوری را اشتباه واردکرده اید و باید دستورات را مجدد بررسی کنید و از صحت آن ها مطمئن شوید.
- در مرحله ی اول توسط SSH به سرور لاگین کنید.
- پس از اینکه وارد SSH شدید دستور زیر را وارد کنید:
1
|
mysql –u example_username –p
|
از طریق یوزری که نام آن را وارد کرده اید به mysql وارد می شوید.
نکته: بجای example_username باید نام یوزر مربوط به پایگاه داده را وارد نمایید تا بتوانید بر روی پایگاه داده ی مورد نظر تغییرا لازم را انجام دهید.
ورود به سرویس mysql در ssh
- وقتی که از شما درخواست شد ، گذرواژه ی مربوط به یوزر پایگاه داده را وارد نمایید.
در زمان تایپ گذرواژه چیزی مشاهده نخواهید کرد و این کاملا طبیعی می باشد . رمز عبور را با دقت و صحیح وارد نموده و کلید Enter را بزنید.
وارد کردن پسورد mysql در ssh
- بعد ازآن دستور زیر را اجرا کنید:
1
|
;use database_name
|
توسط دستور فوق ، Mysql تشخیص می دهد که بر روی کدام پایگاه داده می خواهید عملیات مورد نظر را انجام دهید.
بجای databace_name باید نام پایگاه داده ی مورد نظرتان را که قصد تبدیل به utf-8 دارید وارد نمایید.
شروع تغییر پایگاه داده
پس از اینکه به Mysql لاگین کردید و پایگاه داده ی مورد استفاده را تعیین کردید ، Character Set پیشفرض را تغییر دهید. دستور زیر را وارد کنید:
1
|
;ALTER DATABASE CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci
|
تغییر مجموعه کارکتر های پایگاه داده
تغییر جداول منحصر بفرد پایگاه داده برای استفاده از utf-8 می باشد. بدین منظور دستور زیر را اجرا کنید:
1
|
;show tables
|
باید لیستی از جداول پایگاه داده ی مورد نظر را ببنید. برای هر کدام از جداول داخل لیست، دستور زیر را اجرا کنید:
1
|
;ALTER TABLE tablename CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci
|
بجای tablename نام جدول مورد نظر جهت تبدیل را وارد نمایید.
تغییر جدول به UTF-8
اطمینان یابید دستور فوق را برای تمامی جداول پایگاه داده تکرار کرده باشید. وقتی انجام مراحل فوق برای تمام جداول تمام شد، کار شما به Mysql نیز به اتمام رسیده است.برای خروج از Mysql می توانید عبارت “quit” را تایپ و اجرا کنید. جلسه ی SSH خود را نیز Close کنید.
خروج از سرویس mysql
اعمال تنظیمات لازم در اسکریپت:
در صورتی که در حال استفاده از نرم افزاری هستید که از قبل موجوده و با utf-8 نیز سازگار است، نیازی به تغییری در تنظیمات آن نمی باشید.
Documentation مربوط به اسکریپت خود در خصوص utf-8 را مطالعه نمایید. در غیر این صورت باید تنظیمات مربوط به اتصال پایگاه داده را در اسکریپت جهت استفاده از utd-8 تغییر بدهید. این فرایند برای هر اسکریپت و زبان برنامه نویسی متفاوت است.
می توانید از دستور; SET NAMES utf8mb4 در کوئری های پایگاه داده ی خود استفاده نماییید تا اطمینان حاصل کنید تمامی داده ها با استفاده از utf-8mb4 ارسال شده است.
تغییر فوری Character Set از طریق فایل .htaccess
Character Set مورد نظرتان را از طریق فایل .htaccess تنظیم کنید. این دستورات برای هر مرورگری مشخص می نماید که در وب سایت شما از utf-8 استفاده شده است.
مراحل زیر را انجام دهید:
- مسیر مورد نظر که فایل های وب سایتتان را در آنجا قرار داده اید باز نمایید.
برای سایت ها غالبا دایرکتوری Public_html است. برای سایر سایت های فرعی ، پوشه ای درون Public_html است.
اگر از File Manager در Cpanel استفاده می نمایید ، دقت کنید فایل های hidden یا مخفی در حالت نمایش یا Show باشند.
- در صورتی که فایلی با نام .htaccess در هاست خود ندارید .یک فایل با این نام ایجاد نمایید.
- فایل .htaccess را باز کنید و کد زیر را در آن وارد و ذخیره نمایید:
1
|
AddCharset UTF–8 .html .htm.php
|
نکته : کد فوق موجب می شود تمامی فایل هایی که با .html ، .htm و .php پایان می یابند از utf-8 استفاده کنند.
اگر بخواهید انواع فایل ها را اضافه یا حذف کنید کافیه پسوند مورد نظرتان را از لیست حذف و یا به لیست اضافه نمایید.
پس از انجام تمامی موارد فوق به صورت صحیح، پایگاه داده ی شما از کدگذاری utf-8 Character Set استفاده می کند.