دليل المادة
لينكس قاعدة بيانات MySQLكيف يتم تصدير ملفات البيانات؟تصدير أمر بيان csv
MySQLبيانات التصدير
في MySQL يمكنك استخدام ملفاتحدد ... في OUTFILEعبارة لتصدير البيانات ببساطة إلى ملف نصي.
تصدير البيانات باستخدام SELECT ... INTO OUTFILE البيان
في المثال التالي سنقوم بتصدير جدول البيانات إلى ملف /tmp/tutorials.txt:
mysql > SELECT * FROM chenweiliang_tbl - > INTO OUTFILE '/tmp/tutorials.txt' ;
يمكنك تعيين التنسيق المحدد لإخراج البيانات من خلال خيارات الأوامر. المثال التالي مخصص لتصدير تنسيق CSV:
mysql > SELECT * FROM passwd INTO OUTFILE '/tmp/tutorials.csv' - > FIELDS TERMINATED BY ',' ENCLOSED BY ''' - > LINES TERMINATED BY '\ r \ n' ;
في المثال التالي ، يتم إنشاء ملف بقيم مفصولة بفواصل.يمكن استخدام هذا التنسيق من قبل العديد من البرامج.
SELECT a ,b ,a + b INTO OUTFILE '/tmp/result.text'FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '''行 终止'\ n'FROM test_table ;
تحتوي جملة SELECT ... INTO OUTFILE على السمات التالية:
- LOAD DATA INFILE هي العملية العكسية لـ SELECT ... INTO OUTFILE ، SELECT syntax.لكتابة البيانات من قاعدة بيانات إلى ملف ، استخدم SELECT ... INTO OUTFILE ، ولقراءة الملف مرة أخرى في قاعدة البيانات ، استخدم LOAD DATA INFILE.
- حدد ... INTO OUTFILE يمكن أن يقوم تحديد من النموذج "اسم_الملف" بكتابة الأسطر المحددة إلى ملف.تم إنشاء الملف على مضيف الخادم ، لذلك يجب أن يكون لديك إذن FILE لاستخدام بناء الجملة هذا.
- لا يمكن أن يكون الإخراج ملفًا موجودًا.منع العبث ببيانات الملف.
- هل تحتاج إلى حساب لتسجيل الدخول إلى الخادم لاسترداد الملفات.وإلا فلن يكون لـ SELECT ... INTO OUTFILE أي تأثير.
- في UNIX ، يتم إنشاء الملف ليكون قابلاً للقراءة ، والأذونات مملوكة لخادم MySQL.هذا يعني أنه بينما يمكنك قراءة الملف ، قد لا تتمكن من حذفه.
تصدير الجدول كبيانات أولية
ينتج بشكل أساسي برنامج نصي SQL يحتوي على الأوامر CREATE TABLE INSERT وما إلى ذلك اللازمة لإعادة إنشاء قاعدة البيانات من البداية.
لتصدير البيانات باستخدام mysqldump ، تحتاج إلى استخدام الخيار –tab لتحديد الدليل المحدد بواسطة ملف التصدير ، ويجب أن يكون الهدف قابلاً للكتابة.
يقوم المثال التالي بتصدير جدول البيانات chenweiliang_tbl إلى الدليل / tmp:
$ mysqldump - u root - p - no - create - info - tab = / tmp chenweiliang chenweiliang_tbl 密码******
تصدير البيانات بتنسيق SQL
تصدير البيانات بتنسيق SQL إلى الملف المحدد على النحو التالي:
$ mysqldump - u root - p chenweiliang chenweiliang_tbl > dump 。文本 密码******
محتوى الملف الذي تم إنشاؤه بواسطة الأمر أعلاه هو كما يلي:
- MySQL 转储8.23 - - 主机:localhost 数据库:chenweiliang ----------------------------------- ---------------------- - 服务器版本 3.23 。58 - - 表结构为表`chenweiliang_tbl` - CREATE TABLE chenweiliang_tbl ( chenweiliang_id INT (11 )NOT NULL的auto_increment , chenweiliang_title VARCHAR (100 )NOT NULL 默认'' , chenweiliang_author VARCHAR (40 )NOT NULL 默认'' , submission_date日期默认NULL , PRIMARY KEY (chenweiliang_id ), UNIQUE KEY AUTHOR_INDEX (chenweiliang_author ))TYPE = MyISAM ; - - 转储数据的表`chenweiliang_tbl` - INSERT INTO chenweiliang_tbl VALUES (1 ,'Learn PHP' ,'John Poul' ,'2007-05-24' ); INSERT INTO chenweiliang_tbl VALUES (2 ,'学习MySQL' ,'Abdul S' ,'2007-05-24' ); INSERT INTO chenweiliang_tbl VALUES (3 ,'JAVA Tutorial' ,'Sanjay' ,'2007-05-06' );
إذا كنت بحاجة إلى تصدير بيانات قاعدة البيانات بأكملها ، فيمكنك استخدام الأمر التالي:
$ mysqldump - u root - p chenweiliang > database_dump 。文本 密码******
إذا كنت بحاجة إلى نسخ جميع قواعد البيانات احتياطيًا ، فيمكنك استخدام الأمر التالي:
$ mysqldump - u root - p - all - databases > database_dump 。文本 密码******
تمت إضافة الخيار --all-databases في MySQL 3.23.12 وما بعده.
يمكن استخدام هذه الطريقة لتنفيذ استراتيجية النسخ الاحتياطي لقاعدة البيانات.
انسخ جداول البيانات وقواعد البيانات إلى مضيفين آخرين
إذا كنت بحاجة إلى نسخ البيانات إلى خادم MySQL آخر ، فيمكنك تحديد اسم قاعدة البيانات والجدول في الأمر mysqldump.
قم بتنفيذ الأمر التالي على المضيف المصدر لنسخ البيانات احتياطيًا إلى ملف dump.txt:
$ mysqldump - u root - p database_name table_name > dump 。文本 密码*****
إذا قمت بنسخ قاعدة البيانات احتياطيًا بالكامل ، فلن تحتاج إلى استخدام اسم جدول محدد.
إذا كنت بحاجة إلى استيراد قاعدة البيانات الاحتياطية إلى خادم MySQL ، فيمكنك استخدام الأمر التالي ، باستخدام الأمر التالي الذي تحتاجه لتأكيد إنشاء قاعدة البيانات:
$ mysql - u root - p database_name < dump 。文本 密码*****
你也可以使用以下命令将导出的数据直接导入到远程的服务器上,但请确保两台服务器是相通的,是可以相互访问的:</ p > $ mysqldump的- ü根- p DATABASE_NAME \ | mysql - h other - host 。com database_name
يستخدم الأمر أعلاه أنبوبًا لاستيراد البيانات التي تم تصديرها إلى المضيف البعيد المحدد.
مدونة Hope Chen Weiliang ( https://www.chenweiliang.com/ ) شارك "كيفية تصدير ملفات البيانات من قاعدة بيانات Linux MySQL؟أمر تصدير عبارة csv "لمساعدتك.
مرحبا بكم في مشاركة رابط هذه المقالة:https://www.chenweiliang.com/cwl-501.html
