Како да извезувате датотеки со податоци од базата на податоци на Linux MySQL?команда за извоз на CSV изјава

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 Изборот од формата '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?Извези команда за изјава за csv" за да ти помогне.

Добредојдовте да ја споделите врската од оваа статија:https://www.chenweiliang.com/cwl-501.html

За да отклучите повеќе скриени трикови🔑, добредојдени сте да се придружите на нашиот Телеграм канал!

Споделете и лајкнете ако ви се допаѓа! Вашите споделувања и лајкови се наша постојана мотивација!

 

评论

Вашата адреса за е-пошта нема да биде објавена. Се користат задолжителните полиња * Етикета

Дојдете до врв