Chúng tôi bắt đầu xây dựng trang web trên Sản xuất, sau đó có máy chủ Dev, vì vậy ban đầu tôi đã chuyển cơ sở dữ liệu Sản xuất sang Dev bằng các lệnh như thế này
$ mysqldump -a -u USERNAME -p DATABASE > OUTPUT.mysql
$ gzip OUTPUT.mysql
Sau đó, tôi đã tạo trang web và cơ sở dữ liệu máy chủ Dev, chuyển OUTPUT. mysql over và thiết lập môi trường MySQL trên Dev để import
$ mysql -u USERNAME -p DATABASE
set up environment for large data import:
mysql> set global net_buffer_length=1000000;
mysql> set global max_allowed_packet=1000000000;
mysql> exit
Và đã nhập cả dữ liệu và lược đồ vào Dev bằng các lệnh này
$ gunzip -f OUTPUT.mysql.gz
$ mysql -u USERNAME -p TARGET_DATABASE_NAME < OUTPUT.sql
Bây giờ tôi đã thực hiện các thay đổi đối với cấu trúc của cơ sở dữ liệu Dev MySQL, chẳng hạn như thêm/xóa các trường trong bảng hiện có và thêm bảng và tôi muốn chuyển các thay đổi của mình sang Sản xuất
Làm cách nào để tôi chỉ di chuyển cấu trúc đã cập nhật từ cơ sở dữ liệu Dev và nhập vào Sản xuất bằng dòng lệnh, tương tự như những gì tôi đã làm ban đầu nhưng không ghi đè lên dữ liệu trực tiếp? . ]
Cơ sở dữ liệu đã trở nên quá lớn để thực hiện điều này với phpMyAdmin [ngoài ra, dòng lệnh có vẻ nhanh hơn và dễ làm việc hơn]. Sẽ thật tuyệt nếu tránh xa các công cụ của bên thứ ba hoặc phần mềm nguồn mở vì có vẻ như đó là một quy trình đơn giản mà tôi có thể đưa vào một tập lệnh. Hay tôi đang hiểu sai và tôi đang thiếu thứ gì đó tốt hơn?
CẬP NHẬT. Vì vậy, dựa trên các câu trả lời dưới đây và đọc thêm, tôi đã viết một tập lệnh PHP để kiểm tra cả cơ sở dữ liệu trực tiếp và cơ sở dữ liệu cục bộ của tôi [bao gồm một số thay đổi] và so sánh sự khác biệt giữa các bảng
Tập lệnh tìm bảng nào bị thiếu trong cơ sở dữ liệu trực tiếp so với. local bằng chức năng "SHOW TABLES" của MySQL trên cả hai cơ sở dữ liệu và so sánh. Đối với những bảng bị thiếu này, tôi đã sử dụng SHOW CREATE TABLE để lấy các câu lệnh MySQL để tạo bảng
Tương tự, tập lệnh tìm cột nào bị thiếu bằng cách sử dụng SHOW COLUMNS FROM $table trên mỗi bảng trong mỗi cơ sở dữ liệu. Lệnh MySQL này trả về các tên và thuộc tính cột, vì vậy sau đó tôi có thể tự động xây dựng các câu lệnh ALTER TABLE cho các cột bị thiếu
Cuối cùng, tập lệnh PHP xuất mọi thứ dưới dạng tập lệnh SQL để tạo và thay đổi các bảng mà tôi đã chạy trong phpMyAdmin
MySQL Workbench là một công cụ trực quan hợp nhất dành cho kiến trúc sư cơ sở dữ liệu, nhà phát triển và DBA. MySQL Workbench cung cấp mô hình hóa dữ liệu, phát triển SQL và các công cụ quản trị toàn diện để cấu hình máy chủ, quản trị người dùng, sao lưu, v.v. MySQL Workbench khả dụng trên Windows, Linux và Mac OS X
Thiết kế
MySQL Workbench cho phép DBA, nhà phát triển hoặc kiến trúc sư dữ liệu thiết kế, lập mô hình, tạo và quản lý cơ sở dữ liệu một cách trực quan. Nó bao gồm mọi thứ mà người lập mô hình dữ liệu cần để tạo các mô hình ER phức tạp, kỹ thuật chuyển tiếp và đảo ngược, đồng thời cung cấp các tính năng chính để thực hiện các nhiệm vụ lập tài liệu và quản lý thay đổi khó thường đòi hỏi nhiều thời gian và công sức.
Tìm hiểu thêm »
Phát triển
MySQL Workbench cung cấp các công cụ trực quan để tạo, thực thi và tối ưu hóa các truy vấn SQL. Trình soạn thảo SQL cung cấp đánh dấu cú pháp màu, tự động hoàn thành, sử dụng lại các đoạn mã SQL và lịch sử thực thi của SQL. Bảng điều khiển kết nối cơ sở dữ liệu cho phép các nhà phát triển dễ dàng quản lý các kết nối cơ sở dữ liệu tiêu chuẩn, bao gồm MySQL Fabric. Trình duyệt đối tượng cung cấp quyền truy cập tức thời vào lược đồ và đối tượng cơ sở dữ liệu.
Tìm hiểu thêm »
quản lý
MySQL Workbench cung cấp bảng điều khiển trực quan để dễ dàng quản trị môi trường MySQL và có được khả năng hiển thị tốt hơn trong cơ sở dữ liệu. Các nhà phát triển và DBA có thể sử dụng các công cụ trực quan để định cấu hình máy chủ, quản trị người dùng, thực hiện sao lưu và phục hồi, kiểm tra dữ liệu kiểm toán và xem tình trạng cơ sở dữ liệu.
Tìm hiểu thêm »
Bảng điều khiển hiệu suất trực quan
MySQL Workbench cung cấp một bộ công cụ để cải thiện hiệu suất của các ứng dụng MySQL. DBA có thể nhanh chóng xem các chỉ số hiệu suất chính bằng Bảng điều khiển hiệu suất. Báo cáo hiệu suất cung cấp khả năng nhận dạng và truy cập dễ dàng vào các điểm phát sóng IO, các câu lệnh SQL chi phí cao, v.v. Ngoài ra, chỉ với 1 cú nhấp chuột, các nhà phát triển có thể thấy nơi để tối ưu hóa truy vấn của họ với Kế hoạch giải thích trực quan được cải tiến và dễ sử dụng.
Tìm hiểu thêm »
Di chuyển cơ sở dữ liệu
MySQL Workbench hiện cung cấp giải pháp hoàn chỉnh, dễ sử dụng để di chuyển Microsoft SQL Server, Microsoft Access, Sybase ASE, PostreSQL và các bảng, đối tượng và dữ liệu RDBMS khác sang MySQL. Các nhà phát triển và DBA có thể nhanh chóng và dễ dàng chuyển đổi các ứng dụng hiện có để chạy trên MySQL cả trên Windows và các nền tảng khác. Di chuyển cũng hỗ trợ di chuyển từ các phiên bản MySQL cũ hơn sang các bản phát hành mới nhất.
Tìm hiểu thêm »