مقالې لارښود
لینوکس د MySQL ډیټابیسد ډیټا فایلونو صادرولو څرنګوالی؟د csv بیان کمانډ صادر کړئ
ماید ډیټا ډیټا صادرول
په 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 سرور ملکیت دی.دا پدې مانا ده چې پداسې حال کې چې تاسو فایل لوستلی شئ ، تاسو ممکن نشئ کولی دا حذف کړئ.
جدول د خام معلوماتو په توګه صادر کړئ
دا په عمده توګه یو ایس کیو ایل سکریپټ تولیدوي چې کمانډونه پکې شامل دي CREATE TABLE INSERT etc. د سکریچ څخه ډیټابیس بیا جوړولو لپاره اړین دي.
د 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
پورته کمانډ ټاکل شوي ریموټ کوربه ته صادر شوي ډاټا واردولو لپاره پایپ کاروي.
امید چن وییلینګ بلاګ ( https://www.chenweiliang.com/ د لینکس مای ایس کیو ایل ډیټابیس څخه د ډیټا فایلونو صادرولو څرنګوالی؟ستاسو سره د مرستې لپاره د csv بیان کمانډ صادر کړئ.
د دې مقالې لینک شریکولو ته ښه راغلاست:https://www.chenweiliang.com/cwl-501.html
د AI مرستې خلاص کړئ او غیر موثر کار ته الوداع ووایاست! 🔓💼
🔔 د چینل په پین شوي ډایرکټرۍ کې سمدلاسه "ډیپ سیک پرامپټ ورډ آرټیفکټ" ترلاسه کړئ! 🎯
📚 له لاسه ورکړه = د تل لپاره شاته پاتې شه! اوس اقدام وکړئ! ⏳💨
که مو خوښه شوه لایک او شریک کړئ! ستاسو شریکول او خوښول زموږ دوامداره هڅونه ده!