Или мне нужно будет получить корпоративную версию?
Это потому, что я нашел это на сайте MySQL:
Если вы используете систему производственного уровня MySQL, мы хотели бы обратить ваше внимание на описание продукта MySQL Enterprise Edition по адресу:
Когда я проверяю функции, мне кажется, что версия для сообщества не поддерживает транзакции, а версия для предприятий поддерживает.
Если правда, что версия сообщества не подходит для производства, то мне кажется, что posgresql может быть моим выходом, поскольку он поддерживает транзакции и является полностью открытым исходным кодом.
Нужно ли будет (сильно) изменить синтаксис sql, если мне придется это изменить?
Да. Версия сообщества - это, безусловно, наиболее широко используемая версия MySQL в производственных средах. Вы можете поблагодарить Oracle за приобретение Sun за путаницу.
Транзакции действительно поддерживаются механизмом хранения InnoDB, который включен в версию сообщества MySQL.
Корпоративная версия поставляется с контрактом на поддержку, а также с несколькими дополнительными функциями: MySQL Enterprise Monitor, MySQL Enterprise Backup и MySQL Workbench. Следует отметить, что эти инструменты на самом деле очень хороши, и они добавляют оправдание цене, а не просто договор о поддержке.
Если вам нужны альтернативы MySQL Enterprise Backup с открытым исходным кодом, я предлагаю Percona Xtrabackup. Я не знаю ни одного хорошо альтернативы их продукту Monitor.
Еще одна вещь, о которой стоит подумать, - это использовать замену MySQL под названием Сервер Percona с XtraDB. Он тоже бесплатный и основан на коде MySQL. Они применили несколько (широко используемых) исправлений для повышения производительности MySQL на современном оборудовании (в частности, многоядерном), а также улучшили такие вещи, как репликация, мониторинг и надежность.
В MySQL транзакции - это функция механизма хранения; InnoDB поддерживает транзакции MyISAM, но не поддерживает. Если версия сообщества поддерживает InnoDB (что, я думаю, поддерживает), то она поддерживает транзакции. Я думаю, что четыре дополнительных приложения, которые перечислены на странице, на которую есть ссылки, являются самыми большими преимуществами, плюс любая поддержка, которую вы получаете.
В зависимости от платформы, на которой вы развертываете, поставщик вашей ОС может включать поддерживаемую версию, которую я бы посоветовал придерживаться, если у вас нет веской причины не делать этого. Но если ваша ОС его не поддерживает, то Enterprise - это способ получить платную поддержку.
Краткий ответ: да, это безопасно для производственного использования, и почти все используют версию сообщества.
Полностью зависит от вашего механизма хранения. Если вы используете Innodb, который поддерживается во всех версиях Mysql, у вас есть доступ к транзакциям. Myisam, исходный механизм хранения Mysql, не поддерживает транзакции.
Версия Enterprise работает медленнее, выпускает чаще и имеет меньше функций, чем версия Community. Также вы должны заплатить за Enterprise, который отпугивает многих людей. Подробнее здесь для различий.