Hướng dẫn copy table mysql to another database - sao chép bảng mysql sang cơ sở dữ liệu khác

Phương pháp tốt nhất để sao chép dữ liệu từ bảng trong một cơ sở dữ liệu vào một bảng trong cơ sở dữ liệu khác khi cơ sở dữ liệu nằm dưới những người dùng khác nhau là gì?

Tôi biết rằng tôi có thể sử dụng

INSERT INTO database2.table2 SELECT * from database1.table1

Nhưng ở đây, vấn đề là cả

mysqldump --user=user1 --password=password1 database1 table1 \
| mysql --user=user2 --password=password2 database2
7 và
mysqldump --user=user1 --password=password1 database1 table1 \
| mysql --user=user2 --password=password2 database2
8 đều thuộc những người dùng MySQL khác nhau. Vì vậy,
mysqldump --user=user1 --password=password1 database1 table1 \
| mysql --user=user2 --password=password2 database2
9 chỉ có thể truy cập
mysqldump --user=user1 --password=password1 database1 table1 \
| mysql --user=user2 --password=password2 database2
7 và
mysqldump --user=user1 --password=password1 database1 table1 \
| sed -e 's/`table1`/`table2`/' \
| mysql --user=user2 --password=password2 database2
1 chỉ có thể truy cập
mysqldump --user=user1 --password=password1 database1 table1 \
| mysql --user=user2 --password=password2 database2
8. Bất kỳ ý tưởng?

Đã hỏi ngày 3 tháng 9 năm 2012 lúc 6:04Sep 3, 2012 at 6:04

Hướng dẫn copy table mysql to another database - sao chép bảng mysql sang cơ sở dữ liệu khác

5

Nếu bạn có quyền truy cập shell, bạn có thể sử dụng

mysqldump --user=user1 --password=password1 database1 table1 \
| sed -e 's/`table1`/`table2`/' \
| mysql --user=user2 --password=password2 database2
3 để đổ nội dung của
mysqldump --user=user1 --password=password1 database1 table1 \
| sed -e 's/`table1`/`table2`/' \
| mysql --user=user2 --password=password2 database2
4 và gửi nó xuống
mysqldump --user=user1 --password=password1 database1 table1 \
| sed -e 's/`table1`/`table2`/' \
| mysql --user=user2 --password=password2 database2
5 xuống
mysqldump --user=user1 --password=password1 database1 table1 \
| mysql --user=user2 --password=password2 database2
8. Vấn đề ở đây là
mysqldump --user=user1 --password=password1 database1 table1 \
| sed -e 's/`table1`/`table2`/' \
| mysql --user=user2 --password=password2 database2
7 vẫn là
mysqldump --user=user1 --password=password1 database1 table1 \
| sed -e 's/`table1`/`table2`/' \
| mysql --user=user2 --password=password2 database2
7.

mysqldump --user=user1 --password=password1 database1 table1 \
| mysql --user=user2 --password=password2 database2

Có lẽ bạn cần đổi tên

mysqldump --user=user1 --password=password1 database1 table1 \
| sed -e 's/`table1`/`table2`/' \
| mysql --user=user2 --password=password2 database2
7 thành
mysqldump --no-create-info --no-create-db --user=user1 --password=password1 database1 table1 \
| sed -e 's/`table1`/`table2`/' \
| mysql --user=user2 --password=password2 database2
0 với một truy vấn khác. Mặt khác, bạn có thể sử dụng SED để thay đổi Bảng 1 thành Bảng 2 giữa các đường ống.

mysqldump --user=user1 --password=password1 database1 table1 \
| sed -e 's/`table1`/`table2`/' \
| mysql --user=user2 --password=password2 database2

Nếu Bảng 2 đã tồn tại, bạn có thể thêm các tham số vào MySQLDump đầu tiên không để tạo ra các hệ thống tạo bảng.

mysqldump --no-create-info --no-create-db --user=user1 --password=password1 database1 table1 \
| sed -e 's/`table1`/`table2`/' \
| mysql --user=user2 --password=password2 database2

MVG

55.6K19 Huy hiệu vàng138 Huy hiệu bạc266 Huy hiệu Đồng19 gold badges138 silver badges266 bronze badges

Đã trả lời ngày 3 tháng 9 năm 2012 lúc 6:51Sep 3, 2012 at 6:51

Helmorhelmorhelmor

1.3691 Huy hiệu vàng7 Huy hiệu bạc2 Huy hiệu đồng1 gold badge7 silver badges2 bronze badges

2

mysqldump --no-create-info --no-create-db --user=user1 --password=password1 database1 table1 \
| sed -e 's/`table1`/`table2`/' \
| mysql --user=user2 --password=password2 database2
1

trong đó db1 là đích và db2 là nguồn

Đã trả lời ngày 24 tháng 3 năm 2014 lúc 19:30Mar 24, 2014 at 19:30

MainMeatMainMeatmainmeat

1.4091 Huy hiệu vàng9 Huy hiệu bạc2 Huy hiệu đồng1 gold badge9 silver badges2 bronze badges

9

Nếu bạn đang sử dụng phpmyadmin, nó có thể thực sự đơn giản. Giả sử bạn có cơ sở dữ liệu sau:PHPMyAdmin, it could be really simple. Suppose you have following databases:

DB1 & DB2

DB1 có người dùng bảng mà bạn muốn sao chép vào DB2

Theo phpmyadmin, mở DB1, sau đó truy cập bảng người dùng.

Trên trang này, nhấp vào tab "Hoạt động" ở phía trên bên phải. Trong các hoạt động, hãy tìm bảng bản sao phần (cơ sở dữ liệu.table):"Operations" tab on the top right. Under Operations, look for section Copy table to (database.table):

& Bạn xong việc rồi!

Đã trả lời ngày 13 tháng 8 năm 2015 lúc 11:51Aug 13, 2015 at 11:51

Hướng dẫn copy table mysql to another database - sao chép bảng mysql sang cơ sở dữ liệu khác

10

Hướng dẫn copy table mysql to another database - sao chép bảng mysql sang cơ sở dữ liệu khác

Điều này sẽ dễ dàng xử lý các vấn đề di chuyển. Bạn có thể di chuyển các bảng đã chọn của cơ sở dữ liệu đã chọn giữa MySQL và SQLServer. Bạn nên thử chắc chắn.

Đã trả lời ngày 3 tháng 9 năm 2012 lúc 7:48Sep 3, 2012 at 7:48

mmdemirbasmmdemirbasmmdemirbas

8.9605 Huy hiệu vàng48 Huy hiệu bạc52 Huy hiệu đồng5 gold badges48 silver badges52 bronze badges

6

Tôi sử dụng Navicat cho MySQL ...

Nó làm cho tất cả các thao tác cơ sở dữ liệu dễ dàng!

Bạn chỉ cần chọn cả hai cơ sở dữ liệu trong Navicat và sau đó sử dụng.

 INSERT INTO Database2.Table1 SELECT * from Database1.Table1

DJO

2.0652 Huy hiệu vàng28 Huy hiệu bạc46 Huy hiệu đồng2 gold badges28 silver badges46 bronze badges

Đã trả lời ngày 26 tháng 1 năm 2014 lúc 17:28Jan 26, 2014 at 17:28

Nick Mnick mNick M

2713 Huy hiệu bạc4 Huy hiệu đồng3 silver badges4 bronze badges

1

Nó hoạt động tốt cho tôi

CREATE TABLE dbto.table_name like dbfrom.table_name;
insert into  dbto.table_name select * from dbfrom.table_name;

Đã trả lời ngày 17 tháng 8 năm 2020 lúc 19:22Aug 17, 2020 at 19:22

0

Nếu các bảng của bạn nằm trên cùng một máy chủ MySQL, bạn có thể chạy như sau

CREATE TABLE destination_db.my_table SELECT * FROM source_db.my_table;
ALTER TABLE destination_db.my_table ADD PRIMARY KEY (id); 
ALTER TABLE destination_db.my_table MODIFY COLUMN id INT AUTO_INCREMENT;

Đã trả lời ngày 7 tháng 3 năm 2017 lúc 18:10Mar 7, 2017 at 18:10

Hướng dẫn copy table mysql to another database - sao chép bảng mysql sang cơ sở dữ liệu khác

Weston Gangerweston GangerWeston Ganger

6.0203 Huy hiệu vàng39 Huy hiệu bạc39 Huy hiệu Đồng3 gold badges39 silver badges39 bronze badges

1

Đây là một cách dễ dàng khác:

  1. sử dụng DB1; Hiển thị Tạo Bảng TB1;
    • Sao chép cú pháp tại đây trong bảng tạm để tạo TB1 trong DB2
  2. sử dụng DB2;
    • Dán cú pháp ở đây để tạo bảng TB1

mysqldump --no-create-info --no-create-db --user=user1 --password=password1 database1 table1 \
| sed -e 's/`table1`/`table2`/' \
| mysql --user=user2 --password=password2 database2
2

Hướng dẫn copy table mysql to another database - sao chép bảng mysql sang cơ sở dữ liệu khác

Hamza Zafeer

2.27013 Huy hiệu vàng33 Huy hiệu bạc41 Huy hiệu đồng13 gold badges33 silver badges41 bronze badges

Đã trả lời ngày 26 tháng 10 năm 2017 lúc 0:11Oct 26, 2017 at 0:11

MojgankmojgankMojganK

Phù hiệu bạc 20137 Huy hiệu đồng3 silver badges7 bronze badges

1

Sử dụng chức năng xuất và nhập của MySQL Workbench. Các bước: 1. Chọn các giá trị bạn muốn
1. Select the values you want

E.g. select * from table1; 
  1. Nhấp vào nút Xuất và lưu nó dưới dạng CSV.
  2. Tạo một bảng mới bằng cách sử dụng các cột tương tự như bảng đầu tiên

    E.g. create table table2 like table1; 
    
  3. Chọn tất cả từ bảng mới

    mysqldump --user=user1 --password=password1 database1 table1 \
    | mysql --user=user2 --password=password2 database2
    
    0
  4. Nhấp vào Nhập và chọn tệp CSV bạn đã xuất trong bước 2

Hướng dẫn copy table mysql to another database - sao chép bảng mysql sang cơ sở dữ liệu khác

Đã trả lời ngày 1 tháng 4 năm 2015 lúc 15:59Apr 1, 2015 at 15:59

Hướng dẫn copy table mysql to another database - sao chép bảng mysql sang cơ sở dữ liệu khác

Biniambiniambiniam

7.9268 Huy hiệu vàng46 Huy hiệu bạc57 Huy hiệu đồng8 gold badges46 silver badges57 bronze badges

1

Thử

mysqldump --no-create-info --no-create-db --user=user1 --password=password1 database1 table1 \
| sed -e 's/`table1`/`table2`/' \
| mysql --user=user2 --password=password2 database2
3 (tài liệu)

Hoặc bạn có thể tạo một "bảng liên kết" trên máy chủ đích của bạn. Các bảng được liên kết cho phép bạn nhìn thấy một bảng từ một máy chủ cơ sở dữ liệu khác như thể nó là một bảng cục bộ. (tài liệu)

Sau khi tạo bảng được liên kết, bạn có thể sao chép dữ liệu với

mysqldump --no-create-info --no-create-db --user=user1 --password=password1 database1 table1 \
| sed -e 's/`table1`/`table2`/' \
| mysql --user=user2 --password=password2 database2
4 thông thường

Zombiedev

9501 Huy hiệu vàng10 Huy hiệu bạc25 Huy hiệu đồng1 gold badge10 silver badges25 bronze badges

Đã trả lời ngày 3 tháng 9 năm 2012 lúc 8:18Sep 3, 2012 at 8:18

Aaron Digullaaaron DigullaAaron Digulla

Phim huy hiệu vàng 315K104104 gold badges584 silver badges808 bronze badges

1

Với MySQL Workbench, bạn có thể sử dụng xuất dữ liệu để chỉ đổ bảng vào tệp SQL cục bộ (chỉ dữ liệu, chỉ cấu trúc hoặc cấu trúc và dữ liệu) và sau đó nhập dữ liệu để tải nó vào DB khác.

Bạn có thể có nhiều kết nối (máy chủ khác nhau, cơ sở dữ liệu, người dùng) mở cùng một lúc.

Đã trả lời ngày 16 tháng 1 năm 2015 lúc 16:24Jan 16, 2015 at 16:24

Một cách đơn giản để có được tất cả các truy vấn bạn cần là sử dụng dữ liệu từ Information_schema và Concat.

mysqldump --user=user1 --password=password1 database1 table1 \
| mysql --user=user2 --password=password2 database2
1

Sau đó, bạn sẽ nhận được một danh sách các kết quả trông như thế này:

mysqldump --user=user1 --password=password1 database1 table1 \
| mysql --user=user2 --password=password2 database2
2

Sau đó, bạn có thể chỉ chạy các truy vấn đó.

Tuy nhiên, nó sẽ không hoạt động với quan điểm MySQL. Bạn có thể tránh chúng bằng cách nối thêm

mysqldump --no-create-info --no-create-db --user=user1 --password=password1 database1 table1 \
| sed -e 's/`table1`/`table2`/' \
| mysql --user=user2 --password=password2 database2
5 từ truy vấn ban đầu:

Đã trả lời ngày 18 tháng 6 năm 2019 lúc 6:43Jun 18, 2019 at 6:43

Hướng dẫn copy table mysql to another database - sao chép bảng mysql sang cơ sở dữ liệu khác

John Mellorjohn MellorJohn Mellor

2.3898 Huy hiệu vàng41 Huy hiệu bạc76 Huy hiệu đồng8 gold badges41 silver badges76 bronze badges

Đầu tiên tạo bãi rác. Đã thêm các cờ

mysqldump --no-create-info --no-create-db --user=user1 --password=password1 database1 table1 \
| sed -e 's/`table1`/`table2`/' \
| mysql --user=user2 --password=password2 database2
6 nếu
mysqldump --no-create-info --no-create-db --user=user1 --password=password1 database1 table1 \
| sed -e 's/`table1`/`table2`/' \
| mysql --user=user2 --password=password2 database2
0 đã tồn tại:

mysqldump --user=user1 --password=password1 database1 table1 \
| mysql --user=user2 --password=password2 database2
3

Sau đó nhập mật khẩu

mysqldump --user=user1 --password=password1 database1 table1 \
| mysql --user=user2 --password=password2 database2
9. Sau đó:

mysqldump --user=user1 --password=password1 database1 table1 \
| mysql --user=user2 --password=password2 database2
4
mysqldump --user=user1 --password=password1 database1 table1 \
| mysql --user=user2 --password=password2 database2
5

Sau đó nhập mật khẩu

mysqldump --user=user1 --password=password1 database1 table1 \
| sed -e 's/`table1`/`table2`/' \
| mysql --user=user2 --password=password2 database2
1.

Giống như câu trả lời của Helmor nhưng cách tiếp cận an toàn hơn vì mật khẩu không được hiển thị trong văn bản thô với bảng điều khiển (Reverse-i-search, Mật khẩu Sniffers, v.v.). Cách tiếp cận khác là tốt nếu nó được thực thi từ một tệp tập lệnh với các hạn chế phù hợp được đặt trên các quyền của nó.

yoozer8

7.2737 Huy hiệu vàng55 Huy hiệu bạc89 Huy hiệu đồng7 gold badges55 silver badges89 bronze badges

Đã trả lời ngày 12 tháng 5 năm 2020 lúc 8:00May 12, 2020 at 8:00

wizzfizz94wizzfizz94wizzfizz94

1.09610 Huy hiệu bạc16 Huy hiệu đồng10 silver badges16 bronze badges

Đây có phải là thứ bạn cần phải làm thường xuyên, hay chỉ là một cái?

Bạn có thể thực hiện xuất (ví dụ: sử dụng phpmyadmin hoặc tương tự) sẽ viết ra bảng của bạn và nội dung của nó vào một tệp văn bản, sau đó bạn có thể nhập lại vào cơ sở dữ liệu khác.

DJO

2.0652 Huy hiệu vàng28 Huy hiệu bạc46 Huy hiệu đồng2 gold badges28 silver badges46 bronze badges

Đã trả lời ngày 3 tháng 9 năm 2012 lúc 6:09Sep 3, 2012 at 6:09

SepstersepsterSepster

4.76119 Huy hiệu bạc38 Huy hiệu đồng19 silver badges38 bronze badges

3

Sử dụng các bước dưới đây để sao chép và chèn một số cột từ bảng cơ sở dữ liệu vào bảng cơ sở dữ liệu khác-

  1. Tạo bảng bảng (CộtName DataType (kích thước), Kiểu dữ liệu DataTyMame (kích thước));

2.Insert vào db2.tableName Chọn cộtName1, cộtName2 từ db1.tableName;

Đã trả lời ngày 13 tháng 8 năm 2015 lúc 7:24Aug 13, 2015 at 7:24

Hướng dẫn copy table mysql to another database - sao chép bảng mysql sang cơ sở dữ liệu khác

Đối với tôi, tôi cần phải lấy lược đồ cụ thể để "thông tin_schema.tables"

Ví dụ.

mysqldump --user=user1 --password=password1 database1 table1 \
| mysql --user=user2 --password=password2 database2
6

Đã trả lời ngày 26 tháng 12 năm 2020 lúc 8:59Dec 26, 2020 at 8:59

Hướng dẫn copy table mysql to another database - sao chép bảng mysql sang cơ sở dữ liệu khác

Poomcyberpoomcyberpoomcyber

Huy hiệu Bạc 1311 Huy hiệu Đồng1 silver badge3 bronze badges

1

Trong xampp chỉ cần xuất bảng yêu cầu dưới dạng tệp .sql và sau đó nhập nó vào yêu cầu

Đã trả lời ngày 4 tháng 3 năm 2017 lúc 14:38Mar 4, 2017 at 14:38

Hướng dẫn copy table mysql to another database - sao chép bảng mysql sang cơ sở dữ liệu khác

Sameera Sampathsameera SampathSameera Sampath

6261 Huy hiệu vàng11 Huy hiệu bạc20 Huy hiệu đồng1 gold badge11 silver badges20 bronze badges

Tạo bảng điểm đến_customer như sakila.customer (database_name.tablename), điều này sẽ chỉ sao chép cấu trúc của bảng nguồn, cho dữ liệu cũng được sao chép với cấu trúc thực hiện Table Destination_Customer như chọn * từ Sakila.Customer(Database_name.tablename), this will only copy the structure of the source table, for data also to get copied with the structure do this create table destination_customer as select * from sakila.customer

Đã trả lời ngày 19 tháng 2 năm 2020 lúc 16:35Feb 19, 2020 at 16:35

Hướng dẫn copy table mysql to another database - sao chép bảng mysql sang cơ sở dữ liệu khác

1

Tôi có thể chuyển một bảng từ cơ sở dữ liệu này sang cơ sở dữ liệu khác không?

Một bảng nằm trong một không gian bảng mỗi bảng có thể được nhập từ một trường hợp máy chủ MySQL khác hoặc từ bản sao lưu bằng tính năng không gian bảng có thể vận chuyển..

Tôi có thể sao chép một bảng từ một máy chủ sang một SQL khác không?

Một trong những cách nhanh nhất để sao chép các bảng từ cơ sở dữ liệu này sang cơ sở dữ liệu khác là sử dụng trình hướng dẫn xuất và nhập SQL Server.using the SQL Server Export and Import wizard.