English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

نسخ الجداول في MySQL

إذا كنا بحاجة إلى نسخ جدول البيانات MySQL بشكل كامل، بما في ذلك بنية الجدول، الفهارس، القيم الافتراضية، إلخ. إذا كنت تستخدم فقطCREATE TABLE ... SELECT أمر هو غير قادر على تنفيذ.

سيتم تقديم هذا الفصل كيفية نسخ جدول البيانات MySQL بشكل كامل، الخطوات التالية:

  • استخدام SHOW CREATE TABLE أمر للحصول على إنشاء جدول البيانات (CREATE TABLE) الجملة، والتي تحتوي على بنية الجدول الأصلي، الفهارس، إلخ.

  • انسخ الجملة SQL التي تظهر في الأمر التالي، قم بتعديل اسم الجدول، وأecute الجملة SQL، من خلال الأمر لنسخ بنية الجدول بالكامل.

  • إذا كنت ترغب في نسخ محتويات الجدول، يمكنك استخدام INSERT INTO ... SELECT باستخدام جملة.

مثال عبر الإنترنت

جرب هذا المثال لمحاكاة جدول w3codebox_tbl.

الخطوة الأولى:

الحصول على بنية الجدول الكاملة.

mysql> SHOW CREATE TABLE w3codebox_tbl \G;
*************************** 1. سطر ***************************
       جدول: w3codebox_tbl
إنشاء جدول: CREATE TABLE `w3codebox_tbl` (
  w3codebox_id int(11) NOT NULL auto_increment,
  w3codebox_title varchar(100) NOT NULL default '',
  w3codebox_author varchar(40) NOT NULL default '',
  submission_date date default NULL,
  PRIMARY KEY (`w3codebox_id`),
  UNIQUE KEY `AUTHOR_INDEX` (`w3codebox_author`)
) ENGINE=InnoDB 
1 سطر في المجموعة (0.00 ثانية)
خطأ:
لا يوجد استعلام محدد

الخطوة الثانية:

تعديل اسم الجدول في جملة SQL وتنفيذ الجملة SQL.

mysql> CREATE TABLE `clone_tbl` (
  -> w3codebox_id int(11) NOT NULL auto_increment,
  -> w3codebox_title varchar(100) NOT NULL default '',
  -> w3codebox_author varchar(40) NOT NULL default '',
  -> submission_date date default NULL,
  -> PRIMARY KEY (`w3codebox_id`),
  -> UNIQUE KEY `AUTHOR_INDEX` (`w3codebox_author`)
-> ENGINE=InnoDB;
استعلام جيد، 0 سطر مؤثر (1.80 ثانية)

الخطوة الثالثة:

بعد إكمال الخطوة الثانية، ستتم إنشاء جدول克隆 clone_tbl جديد في قاعدة البيانات. إذا كنت ترغب في نسخ بيانات الجدول، يمكنك استخدام INSERT INTO... SELECT باستخدام جملة.

mysql> INSERT INTO clone_tbl (w3codebox_id,
    -> w3codebox_title,
    -> w3codebox_author,
    -> submission_date)
    -> SELECT w3codebox_id,w3codebox_title,
    -> w3codebox_author,submission_date
    -> FROM w3codebox_tbl;
استعلام OK، تأثرت 3 سجلات (0.07 ثانية)
السجلات: 3    التكرارات: 0    التحذيرات: 0

بعد تنفيذ الخطوات أعلاه، سيتم نسخ محتويات الجدول بشكل كامل، بما في ذلك بنية الجدول والبيانات في الجدول.