2013-04-29 40 views
16

Stackoverflow và MySQL-via-command-line n00b ở đây, hãy nhẹ nhàng! Tôi đã tìm kiếm các câu trả lời cho câu hỏi của mình nhưng chỉ có thể tìm thấy các chủ đề xử lý các bãi chứa GitHubbing MySQL (như: dữ liệu kết xuất) cho sự hợp tác hoặc MySQL "kiểm soát phiên bản" thông qua GitHub, điều này không cho tôi biết điều tôi muốn biết:Làm thế nào để bao gồm lược đồ cơ sở dữ liệu MySQL trên GitHub?

Làm cách nào để bao gồm lược đồ/thông tin cơ sở dữ liệu MySQL trên bảng với các dự án PHP trên GitHub?

Tôi muốn chia sẻ một dự án PHP trên GitHub dựa trên sự tồn tại của cơ sở dữ liệu MySQL với một số bảng nhất định. Nếu ai đó muốn sao chép/sử dụng dự án này, họ sẽ cần phải có các bảng cụ thể này để làm cho kịch bản hoạt động (tất cả các bảng nhưng một bảng trống trong đầu và chỉ được người dùng điền đầy đủ theo thời gian, thông qua tập lệnh ; bảng không trống chứa ba giá trị ngay từ đầu). Làm cách nào để thực hiện điều này, thực tiễn phổ biến là gì?

  • có tôi chỉ nhận được một (đầy đủ) đổ tập tin của db của riêng tôi/bảng, sau đó xóa tất cả các phần dữ liệu (trừ rằng một không trống bảng), đặt tất cả autoincrements không và sau đó tải lên tệp .sql cho GitHub cùng với phần còn lại của dự án? HOẶC
  • Là nó tốt nhất/thực hành tốt hơn để viết một (PHP) kịch bản mà các (có thể không-để-có kinh nghiệm) sử dụng có thể tạo các bảng mà không phải sử dụng mysqldump/dòng lệnh kỳ diệu?

Nếu giải pháp # 1 là con đường để đi, tôi có bao gồm hướng dẫn thêm về cách sử dụng tệp .sql như vậy không? Xin lỗi nếu câu hỏi của tôi có vẻ ngớ ngẩn, nhưng như tôi đã nói ở trên, bản thân tôi mới sử dụng dòng lệnh cho những thứ liên quan đến MySQL và chỉ sử dụng phpMyAdmin cho đến ngày hôm qua (khi tôi tạo tệp kết xuất đầu tiên của mình với mysqldump - yay!).

Trả lời

6

Thực hành phổ biến là bao gồm tập lệnh cài đặt tạo các bảng cần thiết, vì vậy, giải pháp # 2 sẽ là cách để thực hiện.

[sửa] Tập lệnh đó có thể chỉ phát lại một bãi chứa. ;)

Bạn cũng có thể quan tâm di cư: How to automate migration (schema and data) for PHP/MySQL application

+0

Hà, tôi thực sự nghĩ rằng nó sẽ là giá rẻ và dễ dàng (và không quá tốt đẹp để không phải người dùng nên hiểu biết) giải pháp # 1! Có nghĩa là tôi sẽ phải đưa thêm một số công việc vào dự án. :) Cảm ơn bạn đã giúp đỡ! – Kay

+0

+1 để di chuyển. Cho phép bạn giữ các thay đổi tách biệt khỏi lược đồ cơ sở dữ liệu ban đầu của bạn. Tôi đã sử dụng Phinx với sự dễ dàng tương đối đến từ một nền Laravel. – thorne51

Các vấn đề liên quan