Tutorial manual...login
Tutorial manual terbaru MySQL
pengarang:php.cn  masa kemas kini:2022-04-15 14:04:12

data eksport MySQL


Data eksport MySQL

Dalam MySQL anda boleh menggunakan pernyataan SELECT...INTO OUTFILE untuk hanya Eksport data ke fail teks.

Gunakan pernyataan SELECT ... INTO OUTFILE untuk mengeksport data

Dalam contoh berikut, kami mengeksport jadual data php_tbl ke fail /tmp/tutorials.txt:

mysql> SELECT * FROM php_tbl 
    -> INTO OUTFILE '/tmp/tutorials.txt';
Anda boleh menetapkan format output data yang ditentukan melalui pilihan arahan Contoh berikut adalah untuk mengeksport format CSV:
mysql> SELECT * FROM passwd INTO OUTFILE '/tmp/tutorials.txt'
    -> FIELDS TERMINATED BY ',' ENCLOSED BY '"'
    -> LINES TERMINATED BY '\r\n';
Dalam contoh berikut, fail. dijana dengan setiap nilai Asingkan dengan koma. Format ini boleh digunakan oleh banyak program.
SELECT a,b,a+b INTO OUTFILE '/tmp/result.text'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'
FROM test_table;
PILIH ... INTO OUTFILE pernyataan mempunyai atribut berikut:
  • LOAD DATA INFILE ialah operasi terbalik SELECT... INTO OUTFILE, SELECT sintaks. Untuk menulis data daripada pangkalan data ke fail, gunakan SELECT ... INTO OUTFILE, dan untuk membaca fail kembali ke dalam pangkalan data, gunakan LOAD DATA INFILE.

  • PILIH...KE OUTFILE Bentuk 'file_name' SELECT boleh menulis baris yang dipilih ke dalam fail. Fail dibuat pada hos pelayan, jadi anda mesti mempunyai kebenaran FILE untuk menggunakan sintaks ini.

  • Output tidak boleh menjadi fail sedia ada. Elakkan data fail daripada diusik.

  • Anda perlu mempunyai akaun log masuk ke pelayan untuk mendapatkan semula fail. Jika tidak PILIH ... KE OUTFILE tidak akan memberi kesan.

  • Dalam UNIX, fail dicipta boleh dibaca dan kebenaran dimiliki oleh pelayan MySQL. Ini bermakna, walaupun anda akan dapat membaca fail tersebut, anda mungkin tidak dapat memadamkannya.

Eksport jadual sebagai data mentah

mysqldump ialah utiliti yang digunakan oleh mysql untuk memindahkan pangkalan data storan. Ia terutamanya menghasilkan skrip SQL yang mengandungi arahan CREATE TABLE INSERT, dsb. yang diperlukan untuk mencipta semula pangkalan data dari awal.

Untuk menggunakan mysqldump untuk mengeksport data, anda perlu menggunakan pilihan --tab untuk menentukan direktori yang ditentukan oleh fail eksport Sasaran mestilah boleh ditulis.

Contoh berikut mengeksport jadual data php_tbl ke direktori /tmp:

$ mysqldump -u root -p --no-create-info \
            --tab=/tmp php php_tbl
password ******

Eksport data dalam format SQL

Eksport data format SQL ke fail yang ditentukan, seperti yang ditunjukkan di bawah:

$ mysqldump -u root -p php php_tbl > dump.txt
password ******
Kandungan fail yang dibuat oleh arahan di atas adalah seperti berikut:
-- MySQL dump 8.23
--
-- Host: localhost    Database: php
---------------------------------------------------------
-- Server version       3.23.58
--
-- Table structure for table `php_tbl`
--
CREATE TABLE php_tbl (
  php_id int(11) NOT NULL auto_increment,
  php_title varchar(100) NOT NULL default '',
  php_author varchar(40) NOT NULL default '',
  submission_date date default NULL,
  PRIMARY KEY  (php_id),
  UNIQUE KEY AUTHOR_INDEX (php_author)
) TYPE=MyISAM;
--
-- Dumping data for table `php_tbl`
--
INSERT INTO php_tbl 
       VALUES (1,'Learn PHP','John Poul','2007-05-24');
INSERT INTO php_tbl 
       VALUES (2,'Learn MySQL','Abdul S','2007-05-24');
INSERT INTO php_tbl 
       VALUES (3,'JAVA Tutorial','Sanjay','2007-05-06');
Jika anda perlu mengeksport keseluruhan data pangkalan data, anda boleh menggunakan arahan berikut:
$ mysqldump -u root -p php > database_dump.txt
password ******
Jika anda perlu menyandarkan semua pangkalan data, anda boleh menggunakan arahan berikut:
$ mysqldump -u root -p --all-databases > database_dump.txt
password ******
--pilihan semua pangkalan data Ditambah dalam MySQL 3.23.12 dan versi yang lebih baru.

Kaedah ini boleh digunakan untuk melaksanakan strategi sandaran pangkalan data.

Salin jadual data dan pangkalan data ke hos lain

Jika anda perlu menyalin data ke pelayan MySQL lain, anda boleh menentukan nama pangkalan data dan jadual data dalam arahan mysqldump.

Laksanakan arahan berikut pada hos sumber untuk menyandarkan data ke fail dump.txt:

$ mysqldump -u root -p database_name table_name > dump.txt
password *****
Jika anda membuat sandaran pangkalan data sepenuhnya, tidak perlu menggunakan nama jadual tertentu.

Jika anda perlu mengimport pangkalan data yang disandarkan ke dalam pelayan MySQL, anda boleh menggunakan arahan berikut Anda perlu mengesahkan bahawa pangkalan data telah dibuat menggunakan arahan berikut:

$ mysql -u root -p database_name < dump.txt
password *****
Anda juga boleh Gunakan arahan berikut untuk mengimport data yang dieksport terus ke pelayan jauh, tetapi sila pastikan kedua-dua pelayan disambungkan dan boleh mengakses satu sama lain: </p>
$ mysqldump -u root -p database_name \
       | mysql -h other-host.com database_name

Di atas Perintah menggunakan saluran paip untuk mengimport data yang dieksport ke hos jauh yang ditentukan.

Tutorial video berkaitan yang disyorkan:

Laman web PHP Cina