IT-Swarm.Net

Xuất dữ liệu từ lược đồ này sang lược đồ khác trong MySQL Workbench

Có cách nào để xuất các bảng và dữ liệu từ lược đồ này sang lược đồ khác không? Tùy chọn quản lý nhập/xuất yêu cầu tôi chọn một máy chủ để kết nối, sẽ xuất hiện trống. Tôi hiện đang kết nối với một máy chủ mà trường tôi đã thuê, đặc biệt cho lớp này, vì vậy tôi không có bất kỳ quyền quản trị nào.

9
Hokerie

Bạn có thể tạo kết xuất thông qua Xuất dữ liệu trong MySQL Workbench và nhập ngay sau khi xuất sang lược đồ mới. MySQL Workbench cho phép ghi đè lược đồ đích trong kết xuất.

7
Mike Lischke

Nếu bạn gặp rắc rối khi nhập dữ liệu của mình vào lược đồ mới, như không nhận được bất kỳ dữ liệu nào trong đó, có thể cần một cách giải quyết. Tôi đã chạy một xuất một lược đồ từ bàn làm việc của MySQL sang tệp .sql để sau đó nhập nó vào một lược đồ khác và vấn đề là tệp .sql đã xuất duy trì lược đồ trước đó.

Vì vậy, nếu bạn tìm thấy điều này ở phần đầu của tệp xuất .sql:

CREATE DATABASE  IF NOT EXISTS `old_schema` /*!40100 DEFAULT CHARACTER SET latin1 */;
USE `old_schema`;

Thay thế nó bằng cái này:

CREATE DATABASE  IF NOT EXISTS `new_schema` /*!40100 DEFAULT CHARACTER SET latin1 */;
USE `new_schema`;

Điều đó sẽ làm các thủ thuật. Trong một số trường hợp, tệp .sql của bạn có thể có dung lượng vài trăm MB, do đó bạn sẽ phải chờ một chút cho đến khi nó mở ra trong trình chỉnh sửa của bạn. Mã này phải ở đầu tập tin mặc dù vậy rất dễ tìm.

Tôi hy vọng nó sẽ giúp!

3
evaldeslacasa

trong 6.0 trở lên, có vẻ như bãi chứa ghi ra các bảng riêng lẻ trong một thư mục mà bạn đặt tên cho bãi chứa. Tất cả các tên lược đồ và bảng được mặc định cho lược đồ mà bạn đã xuất từ ​​(như bạn đã lưu ý.) Để tạo điều kiện nhập vào một lược đồ mới, chỉ cần chạy như sau trong thư mục kết xuất của bạn:

find . -type f -exec sed -i 's/your_export_schema/your_different_schema_name/g' {} \;

Mặc dù vậy, hãy cẩn thận, bạn sẽ tự cân nhắc nếu bạn có dữ liệu trong bản xuất có tên lược đồ cũ của bạn trong đó.

1
eggmatters

Tôi nhận thấy rằng câu hỏi là về Workbench, nhưng lưu ý rằng phpMyAdmin có khả năng này trực tiếp, trong các hoạt động cơ sở dữ liệu.

0
amichai