فهرست مقاله
لینـوکــس پایگاه داده MySQLچگونه فایل های داده را صادر کنیم؟دستور عبارت csv export
خروجیصادرات داده ها
در MySQL می توانید استفاده کنیدSELECT… INTO 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 استفاده کنید.
- SELECT ... INTO OUTFILE یک انتخاب از فرم 'file_name' می تواند خطوط انتخاب شده را در یک فایل بنویسد.فایل روی میزبان سرور ایجاد شده است، بنابراین برای استفاده از این نحو باید مجوز FILE داشته باشید.
- خروجی نمی تواند یک فایل موجود باشد.از دستکاری داده های فایل جلوگیری کنید.
- آیا برای بازیابی فایل ها باید حساب کاربری داشته باشید تا وارد سرور شوید.در غیر این صورت SELECT ... INTO OUTFILE تاثیری نخواهد داشت.
- در یونیکس، فایل به گونه ای ایجاد می شود که قابل خواندن باشد و مجوزها متعلق به سرور 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
دستور بالا از یک لوله برای وارد کردن داده های صادر شده به میزبان راه دور مشخص شده استفاده می کند.
وبلاگ امید چن ویلیانگ ( https://www.chenweiliang.com/ ) shared "چگونه فایل های داده را از پایگاه داده لینوکس MySQL صادر کنیم؟دستور عبارت csv" را صادر کنید تا به شما کمک کند.
به اشتراک گذاری لینک این مقاله خوش آمدید:https://www.chenweiliang.com/cwl-501.html
برای کشف ترفندهای مخفی بیشتر🔑، به کانال تلگرام ما بپیوندید!
اگر دوست داشتید به اشتراک بگذارید و لایک کنید! اشتراک گذاری ها و لایک های شما انگیزه ادامه دار ماست!