Справочник на статиите
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.
- SELECT ... 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/ ) сподели „Как да експортирам файлове с данни от Linux MySQL база данни?Export csv statement command“, за да ви помогне.
Добре дошли да споделите връзката към тази статия:https://www.chenweiliang.com/cwl-501.html
За да отключите още скрити трикове🔑, заповядайте в нашия Telegram канал!
Споделете и харесайте, ако ви харесва! Вашите споделяния и харесвания са нашата постоянна мотивация!