Чӣ тавр файлҳои маълумотро аз пойгоҳи додаҳои Linux MySQL содир кардан мумкин аст?фармони изҳороти csv содирот

Linux пойгоҳи додаҳои 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 синтаксис мебошад.Барои аз пойгоҳи додаҳо ба файл навиштани маълумот, SELECT ... INTO OUTFILE-ро истифода баред ва барои дубора хондани файл ба пойгоҳи додаҳо, LOAD DATA INFILE -ро истифода баред.
  • ИНТИХОБ КАРДАН... ДАР ОУТФАЙ ИНТИХОБКУНИИ шакли 'ном_файл' метавонад сатрҳои интихобшударо ба файл нависад.Файл дар мизбони сервер сохта шудааст, бинобар ин шумо бояд барои истифодаи ин синтаксис иҷозати 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-database дар 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 Blog ( https://www.chenweiliang.com/ ) shared "Чӣ гуна файлҳои маълумотро аз пойгоҳи додаҳои Linux MySQL содир кардан мумкин аст?Фармони csv изҳороти содирот" барои кӯмак ба шумо.

Хуш омадед ба мубодилаи истиноди ин мақола:https://www.chenweiliang.com/cwl-501.html

Барои кушодани ҳилаҳои пинҳонии бештар🔑, хуш омадед ба канали мо дар Telegram ҳамроҳ шавед!

Поделиться ва лайк, агар ба шумо писанд омад! Саҳмияҳо ва лайкҳои шумо ангезаи доимии мо мебошанд!

 

发表 评论

Суроғаи почтаи электронии шумо нашр намешавад. 必填 项 已 用 * Нишон

Акс аз бойгонӣ