Is the community MySQL safe for production use?

21,998

Solution 1

Yes. The community edition is by far the most widely deployed version of MySQL in production environments. You can thank Oracle's acquisition of Sun for the confusion.

Transactions are indeed supported in the InnoDB storage engine, which is included in MySQL community edition.

The enterprise edition comes with a support contract, as well as a few extra bells and whistles: MySQL Enterprise Monitor, MySQL Enterprise Backup, and MySQL Workbench. It should be noted that these tools are actually very good, and do add some justification for the price instead of it being just a support contract.

If you want open source alternatives to MySQL Enterprise Backup I suggest Percona Xtrabackup. I'm not aware of any good alternatives to their Monitor product though.

Another thing worth considering is using the drop-in replacement for MySQL named Percona Server with XtraDB. It too is free and based off of the MySQL code. They have applied several (widely used) patches to improve MySQL performance on modern hardware (multi-core in particular) as well as improvements for things like replication, monitoring, and reliability.

Solution 2

In MySQL, transactions are a feature of the storage engine; InnoDB supports transactions by MyISAM does not. If the community edition supports InnoDB (which I think it does), then it supports transactions. I think the four additional apps that are listed on the linked-to page are the biggest benefits, plus whatever support you get.

Depending on the platform you are deploying on, your OS vendor might include a supported version, which I would suggest sticking with unless you have a good reason not to. But if your OS doesn't include it, then Enterprise is the way to get paid support.

Solution 3

The short answer: Yes it is safe for production use and nearly everyone uses the community version.

Transactions

Depends entirely on your storage engine. If you use Innodb, which is supported in all Mysql versions, you have access to transactions. Myisam, the original Mysql storage engine, does not support transactions.

Enterprise vs Community

The Enterprise version moves slower, releases more often, and has less features than the Community version. Also you have to pay for Enterprise which puts a number of people off. Read more here for the differences.

Share:
21,998

Related videos on Youtube

n_kips
Author by

n_kips

Updated on September 17, 2022

Comments

  • n_kips
    n_kips over 1 year

    Or Will I need to get the enterprise version?

    This is because I found this on MySQL's site:

    If you are running a MySQL production level system, we would like to direct your attention to the product description of MySQL Enterprise Edition at:

    http://mysql.com/products/enterprise/

    When I check the features, it seems like the community edition does not support transactions, while the enterprise version does.

    If it is true that the community edition is not right for production, then it seems like posgresql may be my way out, for it supports transactions and it is fully opensource.

    Will the sql syntax need to change (much) if I have to change?

    • Rob Moir
      Rob Moir about 13 years
      First of all keep in mind that the website is trying to sell you stuff, that's it's job, but that aside it's a decision you have to make: Does enterprise come with something you need, or not? Or does it come with something you can add in yourself but it looks like too much work and effort compared to just buying it precooked?
  • hobodave
    hobodave about 13 years
    "The Enterprise version moves slower, releases more often, and has less features than the Community version." - This is incorrect. The Enterprise and Community editions are identical and from the same development trunk. Your statement was true roughly two years ago.
  • kashani
    kashani about 13 years
    You got a link on that? It would make sense because running two dev trees is a pain in the ass, but I can't find any docs to back that up.
  • Frank Heikens
    Frank Heikens about 13 years
    Be aware that DDL is never transaction safe in MySQL, unlike PostgreSQL and many other dbms's.