Export و Import در MySQL
عملیات Export و Import در MySQL به معنای انتقال دادهها از یک پایگاه داده یا جدول به فایل خارجی و سپس بارگذاری مجدد آنها در سیستم دیگر یا همان سیستم است. این فرآیندها معمولاً برای پشتیبانگیری، مهاجرت دادهها و انتقال اطلاعات بین سیستمهای مختلف استفاده میشوند.
آموزش بک آپ گرفتن از دیتابیس mysql
1. Export کردن پایگاه داده در MySQL
برای خروجی گرفتن از یک پایگاه داده یا جدول، ابزار mysqldump
استفاده میشود که یک فایل متنی شامل تمام دستورات SQL لازم برای بازسازی پایگاه داده یا جدولها را تولید میکند.
دستور Export (پشتیبانگیری) از یک پایگاه داده:
mysqldump -u username -p database_name > backup_file.sql
- username: نام کاربری MySQL.
- database_name: نام پایگاه دادهای که میخواهید پشتیبانگیری کنید.
- backup_file.sql: نام فایل خروجی که دادهها در آن ذخیره میشوند.
مثال:
mysqldump -u root -p itvisit > itvisit_backup.sql
این دستور تمام دادهها و ساختار پایگاه داده itvisit
را به فایل itvisit_backup.sql
صادر (export) میکند.
Export کردن یک جدول خاص:
اگر میخواهید فقط یک جدول خاص را Export کنید، از دستور زیر استفاده کنید:
mysqldump -u username -p database_name table_name > backup_file.sql
مثال:
mysqldump -u root -p itvisit useritvisit > useritvisit_backup.sql
این دستور فقط جدول useritvisit
را از پایگاه داده itvisit
به فایل useritvisit_backup.sql
صادر میکند.
2. Import کردن پایگاه داده در MySQL
برای وارد کردن دادهها به MySQL از یک فایل SQL پشتیبان (که از طریق mysqldump
ایجاد شده)، از دستور mysql
استفاده میشود.
دستور Import کردن پایگاه داده:
mysql -u username -p database_name < backup_file.sql
- username: نام کاربری MySQL.
- database_name: نام پایگاه دادهای که میخواهید دادهها در آن وارد شوند.
- backup_file.sql: نام فایل SQL که حاوی دادهها است.
مثال:
mysql -u root -p itvisit < itvisit_backup.sql
این دستور فایل itvisit_backup.sql
را به پایگاه داده itvisit
وارد میکند.
ایجاد پایگاه داده قبل از Import
اگر پایگاه داده مقصد وجود ندارد، باید ابتدا آن را ایجاد کنید:
CREATE DATABASE database_name;
مثال:
CREATE DATABASE itvisit;
پس از ایجاد پایگاه داده، دستور Import را اجرا کنید.
3. Export و Import به فرمت CSV
گاهی اوقات نیاز است که دادهها به فرمت CSV (Comma-Separated Values) صادر یا وارد شوند.
Export کردن جدول به فرمت CSV:
برای خروجی گرفتن از یک جدول به فرمت CSV، میتوانید از دستور زیر در MySQL استفاده کنید:
SELECT * INTO OUTFILE '/path/to/file.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
FROM table_name;
مثال:
SELECT * INTO OUTFILE '/tmp/useritvisit.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
FROM useritvisit;
این دستور دادههای جدول useritvisit
را به فایل CSV در مسیر /tmp/useritvisit.csv
صادر میکند.
Import کردن از CSV به جدول:
برای وارد کردن دادهها از فایل CSV به یک جدول MySQL، از دستور LOAD DATA INFILE
استفاده میشود:
LOAD DATA INFILE '/path/to/file.csv'
INTO TABLE table_name
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n';
مثال:
LOAD DATA INFILE '/tmp/useritvisit.csv'
INTO TABLE useritvisit
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n';
این دستور دادههای فایل CSV را به جدول useritvisit
وارد میکند.
4. نکات مهم هنگام Export و Import
- سطوح دسترسی: برای اجرای دستورات
mysqldump
وmysql
باید سطح دسترسی لازم به پایگاه داده و فایلهای سیستم عامل را داشته باشید. - مسیر فایلها: هنگام استفاده از
INFILE
وOUTFILE
، مطمئن شوید که MySQL به مسیر فایلهای مربوطه دسترسی دارد. - پشتیبانگیری منظم: پشتیبانگیری منظم از دادههای حساس ضروری است تا در صورت بروز خطا یا خرابی، دادهها را به راحتی بازیابی کنید.
جمعبندی
- Export: با استفاده از
mysqldump
، دادهها و ساختار جداول را میتوان به یک فایل SQL صادر کرد. - Import: دادهها از فایل پشتیبان SQL به پایگاه داده MySQL وارد میشوند.
- CSV: برای جابهجایی دادهها بین سیستمهای مختلف، میتوان از فرمت CSV استفاده کرد.
منابع
- MySQL Documentation: Export and Import
- DigitalOcean MySQL Backup and Restore Guide