Является ли СУБД Oracle более стабильной, безопасной, надежной и т. Д., Чем СУБД MySQL? - PullRequest
8 голосов
/ 19 сентября 2008

Я работал программистом на различных системах, некоторые с Oracle, некоторые с MySQL. Я продолжаю слышать, как люди говорят, что Oracle более стабильный, более надежный и более безопасный. Это тот случай?

Если да, то каким образом и почему?

Для целей этого вопроса рассмотрим производственную БД малого и среднего размера, возможно, 500 000 записей или около того.

Ответы [ 11 ]

22 голосов
/ 19 сентября 2008

Да. Oracle - это программное обеспечение корпоративного уровня.

Я не уверен, действительно ли это более стабильно, чем mysql, я не использовал mysql так много, но я никогда не помню, чтобы мой mysql падал. У меня был сбой оракула, но когда это происходит, он дает мне больше информации о том, почему он произошел сбой, чем я мог бы хотеть, и поддержка Oracle всегда готова помочь (за плату).

Это очень и очень надежно, Oracle DB будет делать практически все, что может, прежде чем взламывать ваши данные. У меня на серверах mysql действительно странные вещи, когда им не хватает места на диске, Oracle просто остановит все транзакции и, в конце концов, завершит работу, если он не может писать нужные ему файлы. Я никогда не терял данные в oracle, даже когда я делаю глупые вещи, например, забываю предложение where и обновляю каждую строку, а не одну строку, очень легко вернуть базу данных в прежнее состояние, прежде чем облажаться.

Не уверен насчет безопасности, конечно, Oracle предоставляет вам множество вариантов подключения к БД и аутентификации. Он предоставляет множество опций, касающихся того, какие пользователи имеют доступ к чему-либо и т. Д. Но, как и в большинстве случаев, если вы хотите серьезно относиться к безопасности, тогда вам нужен эксперт, чтобы это сделать. Oracle, безусловно, может многое потерять, если они не получат правильную защиту. Но, как и во всем, были подвиги.

Если ничего другого, просто подумайте об этом ... Когда Oracle заполняется, у них есть клиенты, которые платят 40 тысяч долларов за процессор (если они лохи и платят по прайс-листу) лицензию + ежегодные сборы за обслуживание. Это дает им очень сильный интенсив, чтобы убедиться, что клиенты довольны продуктом.

Для небольшой базы данных я бы серьезно рекомендовал Oracle XE задолго до mysql. Он обладает важными функциями mysql (Free), его очень легко установить, поставляется с красивым веб-интерфейсом и платформой приложений (Application Express), если ваша БД будет работать на одном процессоре, 1 ГБ ОЗУ и 4 ГБ данных, тогда XE это путь ИМХО.

Mysql имеет свое применение, многие люди показали, что с его помощью можно создавать великолепные вещи, но он далеко отстает от Oracle (и SQL Server, и DB2) с точки зрения возможностей ... Но, кроме того, он также бесплатный и очень легко учиться, что для многих людей является наиболее важной особенностью.

7 голосов
/ 20 сентября 2008

Я заставил Oracle создать поврежденную базу данных, когда на диске не хватило места. Его сложно отлаживать, он использует множество ресурсов и с ним трудно работать, если у вас нет опытного администратора базы данных. Oracle даже заменил системные двоичные файлы (например, gcc) в / usr / bin /, когда я установил их по случаю.

Работа с PostgreSQL, с другой стороны, была намного приятнее. Он дает читаемые сообщения об ошибках и действует более понятным образом, если вы привыкли работать с системами с открытым исходным кодом * nix. Настроить репликацию довольно просто, что делает ваши данные достаточно безопасными.

5 голосов
/ 29 апреля 2009
  • для небольших БД (несколько миллионов записей) Oracle излишне
  • вам нужен опытный администратор баз данных для правильной установки и управления системой Oracle
  • У Oracle большие "базовые издержки", т. Е. Вам нужна более мощная машина для запуска Oracle
  • опыт Oracle "из коробки" был жестоким (я не устанавливал систему оракула годами; не знаю, как она себя ведет), в то время как mysql очень хорош
5 голосов
/ 04 октября 2008

На вашем мобильном телефоне, вероятно, может быть запущена база данных 500K записей. Серьезно, он настолько мал, что Oracle XE и MySQL будет более чем достаточно для управления им.

4 голосов
/ 06 октября 2008

Oracle - зверь, которому действительно нужны знания администратора баз данных. Я согласен с теми, кто говорит, что записи 500k - ничто. Это не стоит сложности Oracle, если это простые числовые / текстовые данные.

С другой стороны, Oracle чрезвычайно эффективен с BLOB-объектами. Если бы каждая из ваших записей представляла собой двоичный файл размером 100 МБ, вам понадобилось бы целое состояние для его запуска в Oracle (я бы порекомендовал кластер RAC с 3 узлами и хорошим SAN).

3 голосов
/ 19 сентября 2008

Oracle Enterprise предполагает, что существует Enterprise для его поддержки, то есть настоящий Oracle DBA. Начинающий (но компетентный) администратор баз данных должен быть в состоянии защитить MySQL намного легче, чем Oracle, просто потому, что Oracle по своей природе более сложен. Конечно, у Oracle есть инструменты мониторинга Enterprise, помимо того, что в настоящее время есть в MySQL (насколько я видел), но администратор должен иметь возможность использовать их, чтобы быть эффективными.

Такая небольшая база данных, как вы описываете, может обрабатываться почти всем, поэтому я не вижу, что Oracle будет иметь гарантию, если инфраструктура уже не будет создана. Оба имеют репликацию, транзакции и резервные копии, поэтому любой из них будет хорошо работать.

3 голосов
/ 19 сентября 2008

У меня есть проект, который отправляет данные (~ 10M строк, 1,2 ГБ данных) в три разные базы данных, 2 Oracle и 1 MySQL. У меня не было проблем с работой ни с одной из систем, и я не видел каких-либо серьезных преимуществ с обеих сторон. Если вы находитесь в месте, где Oracle уже используется для других проектов, добавление одной новой базы данных не должно быть большой проблемой, но если вы думаете о настройке нового сервера базы данных и ничего не делаете в место уже, MySQL сэкономит вам деньги.

2 голосов
/ 19 сентября 2008

Ответ зависит полностью от того, как вы настроите каждую СУБД. Оба способны обрабатывать 500 000 записей много раз.

1 голос
/ 12 февраля 2011

Это правда, что Oracle - зверь.

Также верно, что Oracle широко считается самой безопасной основной базой данных.

Проблема в том, что разработчики Oracle, похоже, не понимают критических концепций безопасности. Oracle является наименее защищенным сервером баз данных на рынке (по данным независимых исследователей безопасности)

http://itic -corp.com / блог / 2010/09 / SQL-сервер, наиболее безопасные-базы данных оракул наименее безопасные-базы данных, так-2002 /

MySQL на самом деле довольно безопасен, согласно этим исследователям. Я не знаю много о доступных для этого инструментах. Что самое забавное в этом исследовании, так это то, что те же люди, которые называют сервер Microsoft SQL игрушкой, украдут свои данные у злоумышленников, которые могут помешать MSSQL, потому что они используют зверя, у которого ужасная модель безопасности, а не «игрушка», ненадежно.

1 голос
/ 19 сентября 2008

Оракул намного сложнее. Многие из его функций будут использоваться только в крупных компаниях или высокопроизводительных средах. В основном это функции, связанные с масштабированием, репликацией и балансировкой нагрузки.

Для небольших БД рассмотрим SQLite. Для малых и средних, посмотрите на MySQL или PostgreSQL. Для наибольшего взгляните на MSSQL, Oracle, DB2 и т. Д.

Изменить: Прочитав другой ответ, я добавлю, что если ваши данные действительно, действительно критически важны, вам понадобится реплицированная установка, и вы, вероятно, захотите посмотреть на провайдеры больших БД для чего-то подобного.

Если вы можете пожертвовать потенциальными ( чрезвычайно редкими ) потерями данных и предпочли бы повысить производительность, посмотрите на некоторые более легкие варианты.

...