2010-03-15 38 views
18

Như hầu hết các bạn đã biết, Sun đã mua lại MySQL (và sau này là Oracle mua lại Sun), và trong quá trình mua lại này, có rất nhiều FUD trong cộng đồng MySQL dẫn đến việc tạo ra nhiều loại nhánh khác nhau.MySQL Fork/Phiên bản nào cần chọn?

Hôm nay chúng tôi có MySQL từ MySQL, Percona (XtraDB) MySQL, MySQL của MySQL, MariaDB, Mưa phùn với tên một vài. Điều này đưa chúng ta đến nguồn gốc của vấn đề.

Chúng tôi đang trong quá trình nâng cấp cơ sở dữ liệu của mình (phần cứng/phần mềm) và tôi muốn biết bạn nên đi một trong những nhánh nào. Mỗi bộ có ưu/nhược điểm riêng. Chúng tôi hiện đang sử dụng MySQL 5.0.x từ MySQL/Linux trên máy 8 lõi. Phần cứng mới của chúng tôi là một con quái vật với 32 lõi và 32GB bộ nhớ kết nối với bộ nhớ NetApp nhanh qua FC.

Tôi muốn gắn bó với MySQL từ MySQL nhưng tôi đã nghe những câu chuyện kinh dị về mức độ nghiêm trọng của MySQL 5.1 trên nhiều lõi. Tôi cũng đã nghe nói rằng MySQL 5.4 hoạt động tốt hơn trên các máy đa lõi nhưng vẫn chưa sẵn sàng cho sản xuất. Ngoài ra, tôi cũng đã nghe rất nhiều điều tốt đẹp về Percona.

Đây là những gì tôi biết cho đến nay:

MySQL 5.1 từ MySQL: sự lựa chọn đáng tin cậy, nhưng không quy mô tốt trên một máy lớn

Percona: Cân tốt, công ty hậu thuẫn tốt . Tôi không có nhiều kinh nghiệm với nó

MariaDB: Không biết nhiều về nó bên cạnh đó nó được thành lập bởi các nhà phát triển MySQL gốc (bao gồm Monty)

OurDelta: Không biết nhiều

Mưa phùn: Chủ yếu là tối ưu hóa cho điện toán đám mây

tôi muốn biết quan điểm chung về vấn đề này là gì. Tôi nên sử dụng phiên bản/phiên bản nào? Các bạn chọn các bản dựng/phiên bản của mình như thế nào?

Cảm ơn!

Trả lời

4

Chỉ cập nhật về điều này. Chúng tôi đã chọn để đi với Percona và chúng tôi không thể hạnh phúc hơn. Percona chắc chắn biết công cụ của họ và theo kịp các công nghệ mới. Chỉ cần kiểm tra http://www.mysqlperformanceblog.com/ Phần mềm nổi bật hàng đầu cộng với những người giỏi đỉnh cao và hỗ trợ tuyệt vời, bạn không thể đi sai.

2

Tôi nghĩ vẫn còn quá sớm để viết hoàn toàn MySQL. Tôi không nhiệt tình với Sun/Oracle, nhưng tôi không hiểu rõ họ sẽ đi theo hướng nào. Bất kể, tôi sẽ chờ một năm trước khi nghiêm túc suy nghĩ của việc chuyển sang một ngã ba. Thời gian sẽ cho biết dự án nào có nguồn lực và động lực để tồn tại, hoặc nếu một ngã ba thậm chí còn cần thiết.

2

Sử dụng MariaDB. Gần đây họ đã just released a version. Động cơ của Maria cũng tốt hơn nhiều so với MyISAM. Với dự án mã nguồn mở, bạn đi đến nơi người sáng lập đi.

+1

Tôi nghĩ bạn đang bối rối ở đây. MariaDB là nhánh của MySQL. Maria là một công cụ lưu trữ mà là một phiên bản tốt hơn của MyISAM, nhưng chưa ổn định: http://askmonty.org/wiki/Rename_Maria –

+1

Chỉ vì một sản phẩm không ổn định! = OP là 'nhầm lẫn'. –

1

Google có thư viện bộ nhớ vá được cho là cải thiện hiệu suất trên các cài đặt mysql multi-thread/core. Giả sử, nút cổ chai hiệu suất là trong các thói quen cấp phát bộ nhớ, và sẽ tự biểu hiện bắt đầu từ 4 lõi. Tôi hiện đang chạy một hộp proc kép với 4 lõi mỗi, và không có vấn đề với 5.1.x mà không có bản vá thư viện bộ nhớ.

Đề xuất lớn nhất của tôi là bạn sẽ cài đặt 5.4 và chạy một bộ tiêu chuẩn chống lại nó. Nếu nó làm công việc, đi với nó. Sự phân mảnh của các nhánh khác nhau không hút, nhưng có lẽ nó sẽ là tốt nhất.Ít nhất những người sáng lập có tiền bây giờ để tài trợ cho hướng đi riêng của họ ... Tôi sẽ không có lời khuyên để theo họ một cách mù quáng ... Phải mất rất nhiều thời gian và hiệu quả để thiết lập cơ sở hạ tầng mysql ban đầu, và trong khi nó sẽ 'đau đớn để hỗ trợ đội đã làm nó lần đầu tiên, không có đảm bảo họ sẽ thành công lần thứ hai. Vì vậy, ... hỗ trợ họ, nhưng không dựa vào chúng cho đến khi bạn biết bạn có thể dựa vào chúng.

13

Tất cả các 'nhánh' bạn đã đề cập (ngoại trừ Mưa phùn) đều dựa trên các bản phát hành chính thức mới hơn của MySQL. Tôi nghĩ rằng từ ngã ba có thể dẫn bạn xuống con đường sai - vì ý định chỉ là để cung cấp sau khi sửa đổi thị trường. Tôi đã viết về vấn đề này ở đây:

http://mtocker.livejournal.com/50931.html

Vì họ lại cơ sở của MySQL và MySQL 5.0 là trong "bảo trì kéo dài", chỉ có lỗ hổng lớn phải được cố định. Điều này có nghĩa là bạn muốn chuyển sang 5.1. Nếu chúng ta làm việc với giả định này, thì nó sẽ cắt giảm OurDelta khỏi các quyết định của bạn - vì chúng chỉ là các đối tác xây dựng/đóng gói của MariaDB 5.1.

Tôi nghĩ bạn cũng có thể loại trừ Mưa phùn vì hiện tại nó đang ở giai đoạn tiền thử nghiệm. Họ đang lên kế hoạch thử nghiệm vào cuối mùa hè - nhưng vẫn còn sớm hơn nhiều so với những gì bạn muốn. Tôi thực sự không nghĩ rằng bạn sử dụng một cơ sở dữ liệu chưa sẵn sàng để sản xuất, do đó, quy tắc này cũng ra khỏi MySQL 5.5.

Vì vậy, điều này để lại Percona Server, MySQL chính thức 5.1 và MariaDB. Đúng là 5.1 có khả năng mở rộng kém với nhiều lõi, nhưng nếu bạn bật plugin InnoDB thì tốt hơn.

Phần còn lại của câu trả lời của tôi từ đây trên trong là thiên vị - Tôi làm việc cho Percona:

Percona XtraDB có thêm các bản sửa lỗi CPU khả năng mở rộng hơn so với MySQL 5.1 + InnoDB plugin. Những người mà sẽ thành vấn đề được đề cập ở đây:

http://www.percona.com/docs/wiki/percona-xtradb:features:start

Một tôi có thể nhận xét về đặc biệt đó sẽ có vấn đề là thế này một: http://www.percona.com/docs/wiki/percona-xtradb:patch:innodb_split_buf_pool_mutex

+0

Thật buồn cười vì đó chính xác là những gì chúng tôi đã quyết định với sự trợ giúp của Aurimas (từ Percona). Chúng tôi là một khách hàng hạnh phúc. Giữ công việc tốt. Cảm ơn, Drew – Drew

+0

Morgan Tôi đang thử dùng Percona trên Windows nhưng không thấy bất kỳ tải xuống Windows nào. Bạn chỉ phát hành Percona cho Linux? –

+0

Tôi không còn làm việc cho Percona nữa;) Chính sách chính thức của họ là "liên hệ với bộ phận bán hàng để thảo luận". http://www.percona.com/mysql-support/policies/supported-platforms/ –

7

Cá nhân, tôi nghĩ rằng tất cả mọi người có nhu cầu để thiết lập lập một cài đặt MySQL mới ngày hôm nay nên sử dụng MariaDB. MariaDB dựa trên MySQL 5.1 mới nhất, được duy trì tích cực (bao gồm sửa lỗi cho các lỗi được báo cáo chống lại MySQL) và các gói Percona XtraDB/InnoDB plugin.

Tôi thậm chí không biết liệu "ngã ba" có mô tả chính xác Maria hay không, vì họ cam kết theo dõi current releases of MySQL.

Nói tóm lại: MariaDB 5.1 = MySQL 5.1 + Percona XtraDB + additional useful patches + phát triển tích cực và bảo trì

Cập nhật cuối 2011- Tháng Năm 2012: Tôi chuyển từ MariaDB để Percona Server để có được để MySQL 5,5 nhưng tôi có ý định về việc chuyển đổi trở lại khi nhóm Maria có bản phát hành dựa trên 5.5 ổn định. Tôi nghĩ rằng tất cả những người cần thiết lập một cài đặt MySQL mới ngày hôm nay nên được chạy Percona Server. Nếu bạn đang sử dụng SSDs, bạn * phải * chạy Máy chủ Percona.

+1

Doh. Tôi đã nghĩ về Serverfault. Làm thế nào để câu hỏi này có được ở đây không? ;) – casey

0

Nếu bạn đang nâng cấp cơ sở dữ liệu của mình, bạn cũng nên xem xét các hệ thống phần mềm quản lý dữ liệu khác, hoặc các hệ thống phần mềm quản lý dữ liệu, không chỉ MySQL. Ví dụ, nếu khối lượng công việc DB của bạn là phân tích nhiều hơn giao dịch và dữ liệu chủ yếu được thêm vào theo lô, bạn nên cân nhắc sử dụng MonetDB, DBMS cột cao gấp 1,5-2 đơn vị độ lớn hơn MySQL khi thực hiện phân tích- chỉ có.

Tùy chọn khác là PostgreSQL. Đó là hướng giao dịch nhiều hơn - như MySQL; trên thực tế, chúng là similar đủ để trở thành đối thủ cạnh tranh phù hợp. Có arguments for preferring PostgreSQLarguments for preferring a MySQL variant.

Trên DB-engines.com bạn có thể tìm thấy các DBMS tiềm năng có liên quan khác, FOSS và nguồn đóng/thương mại.