Κατάλογος άρθρου
Linux Βάση δεδομένων MySQLΠώς να εξαγάγετε αρχεία δεδομένων;εντολή εξαγωγής δήλωσης csv
MySQLεξαγωγή δεδομένων
Στη MySQL μπορείτε να χρησιμοποιήσετεΕΠΙΛΕΞΤΕ… ΣΕ ΕΞΩΤΕΡΙΚΟδήλωση για απλή εξαγωγή δεδομένων σε αρχείο κειμένου.
Εξαγωγή δεδομένων χρησιμοποιώντας την πρόταση 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 σύνταξη.Για να γράψετε δεδομένα από μια βάση δεδομένων σε ένα αρχείο, χρησιμοποιήστε το SELECT ... INTO OUTFILE και για να διαβάσετε ξανά το αρχείο στη βάση δεδομένων, χρησιμοποιήστε το LOAD DATA INFILE.
- ΕΠΙΛΟΓΗ ... INTO OUTFILE Ένα SELECT της φόρμας 'file_name' μπορεί να γράψει τις επιλεγμένες γραμμές σε ένα αρχείο.Το αρχείο δημιουργείται στον κεντρικό υπολογιστή του διακομιστή, επομένως πρέπει να έχετε άδεια 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/ ) κοινοποίησε το "Πώς να εξαγάγω αρχεία δεδομένων από τη βάση δεδομένων MySQL του Linux;Εξαγωγή εντολής δήλωσης csv" για να σας βοηθήσει.
Καλώς ήρθατε να μοιραστείτε τον σύνδεσμο αυτού του άρθρου:https://www.chenweiliang.com/cwl-501.html
Για να ξεκλειδώσετε περισσότερα κρυμμένα κόλπα🔑, καλώς ήρθατε στο κανάλι μας στο Telegram!
Κάντε share και like αν σας αρέσει! Τα share και τα likes σας είναι το συνεχές μας κίνητρο!