Подтвердить что ты не робот

С какой РСУБД я должен учиться/использовать? (MySql/SQL Server/Oracle и т.д.)

Я использовал MySql и SQL Server некоторое время. Не для чего-то сложного! В основном для разработки веб-приложений и настольных приложений.

Я также использовал SQLite для некоторых простых приложений (на самом деле это не СУБД, я знаю!). Я еще не использовал Oracle один раз.

Я хочу начать изучать РСУБД, и я действительно не знаю, с кем идти.

Я знаю, что, например, если вы полностью изучаете MySql, вы не столкнетесь с большими проблемами с работой с другими имеющимися RDBMS. Дело в том, что я не имею ни малейшего представления о дополнительных и эксклюзивных функциях, которые каждый из них предлагает. Я не знаю, какой из них лучше для какой среды, и, честно говоря, я не знаю, как они отличаются друг от друга!: (

Я хотел взять курс на Oracle, но потом сказал: "Эй, подождите, что, если есть лучший вариант".

Я большой поклонник .NET, и я также программирую на Java и PHP.

Я действительно смущен, и мне действительно нужно начинать рано. Любая помощь полностью оценена.

Изменить 1: Может ли кто-нибудь рассказать мне, сколько данных можно обрабатывать каждый? Я имею в виду, что я знаю, что, например, Oracle может обрабатывать большое количество данных! Я хочу, чтобы какое-то сравнение: например, Oracle > SQL Server > MySql... Также я хотел бы знать, какой из них богаче в аспекте функций.

Изменить 2: Я действительно не знаю, как поблагодарить всех вас за ваши ответы! Я полностью поражен точностью и простотой ваших ответов!

Для кого-то другого, кто может столкнуться с этим вопросом: Я решился, и я поеду с SQL Server, потому что это отличный баланс функций, доступности и простоты! ANSI SQL и его функции в .NET(например, Linq to Sql) - большие плюсы для меня! В какой-то день я могу попробовать использовать PostgreSql, но я не думаю, что собираюсь где-нибудь рядом с Oracle! По крайней мере, пока!: D

Снова спасибо всем

4b9b3361

Ответ 1

Изучите MySQL, если хотите "популярную" и открытую базу данных. Он не самый продвинутый, но он очень широко используется.

Изучите PostgreSQL, если вы хотите (возможно) самую передовую базу данных с открытым исходным кодом.

Изучите Oracle, если хотите, чтобы тяжелая база данных использовала много на предприятии.

Изучите SQL-сервер, если вы знаете, что в Microsoft просто много.

Примечание: выше варианты являются моими собственными и, очевидно, субъективны. Как обычно, нет "определенного" ответа.

Ответ 2

Я бы не стал прыгать в Oracle прямо сейчас, если вы никогда не работали над этим и не видели никакой необходимости.

Оба MySQL и MSSQL широко доступны и используются (в частности, выпуски Express MSSQL) и являются отличным выбором для большинства проектов. Вы бы хорошо изучили один из них.

Помимо этого, я бы посоветовал вам узнать, какой из них, скорее всего, будет установлен, где вы захотите его использовать. Как правило, это MySQL в Linux/UNIX и MSSQL для Windows.

Что-то еще, чем то, что попадает в очень субъективную территорию.

Ответ 3

Изучите несколько: Oracle, SQL Server и MySQL хорошо знают, потому что они, вероятно, наиболее широко используются - по крайней мере, в разработке веб-приложений.

SQL Server проще всего вставать на Windows и иметь лучшие инструменты. MySQL занимает второе место в Windows. MySQL GUI в Linux, который я проверил, был только так. Если вам удобно работать с интерфейсом командной строки в Linux, то MySQL - это путь.

Что было отмечено, что может помочь вам принять решение - это язык программирования.

Это особенно заметно, потому что SQL Server и Oracle выполняют код на соответствующих языках (не знаю, какие опции существуют для MySQL).

Кроме того, есть и другие интересные аспекты каждой базы данных, например, MySQL делает особенно простой и дешевой настройку репликации master-slave, у SQL Server есть очень полезные инструменты для создания отчетов, Oracle, вероятно, самая стабильная из под давлением - но вы должны знать, как настроить его лучше, чем остальные в моем опыте.

Ответ 4

Я расскажу немного о своем личном опыте. Когда я был моложе, я хотел попробовать веб-разработку. Первая база данных, которую я использовал, - MySQL. Я делал свои маленькие скрипты и был доволен этим. Очевидно, я ничего не знал! Но по мере того, как я прогрессировал, я понял, что я ограничен MySQL. Это было (и есть!) Действительно, действительно далекое от SQL-стандартов, допускает плохую практику (скрытые столбцы GROUP BY..., defaul - это MyISAM (без ссылочной целостности)) и т.д. Я понял даже после нескольких месяцев и месяцев хардкорного кодирования что я все еще плохой.

Я решил попробовать новые вещи. Я загрузил PostgreSQL и, боже, какая потрясающая СУБД! Прежде всего, PostgreSQL действительно является бесплатной для РСУБД. В отличие от MySQL (вы должны платить лицензию для коммерческого использования), вам не нужно беспокоиться о какой-либо лицензии. Я понимаю, что это не может быть для вас чем-то важным (хотя бы на данный момент!).

Тогда тот факт, что Postgres уважает стандарты, является настоящим плюсом для новичка. Вы узнаете о новом мощном синтаксисе ([рекурсивный] CTE, функции окна, ограничения CHECK...), вы можете использовать мощный процедурный язык (pl/pgSQL).

PostgreSQL - это старый, стабильный и зрелый проект. Это определенно стоит попробовать, особенно как новичок. Я знаю, что это субъективный ответ, но я чувствую, что стоит опубликовать так, чтобы новички не совершали ту же ошибку, что и я. Лучше начать с реальных стандартов, а затем переключиться на что-то менее совместимое, так что вы хотя бы знаете, чего не хватает.

Я не могу говорить о других СУБД, таких как Oracle или SQL Server, я их никогда не использовал. Но большинство из них имеют те же преимущества перед MySQL (ANSI SQL Compliant). Самая большая проблема заключается в лицензии, но версий Express может быть достаточно для вас.

Ответ 5

Я не думаю, что вам нужно беспокоиться о размере базы данных в любом из трех упомянутых вами. Я знаю людей, которые поддерживают базы данных размера terrabyte на SQL-сервере, и я уверен, что mySQL может поддерживать большую базу данных.

Если вы подумываете стать специалистом по базам данных, я рекомендую использовать SQL Server или Oracle, поскольку большинство профессиональных позиций специалиста используют один или другой. Вы не говорите, если вас интересует опыт DBA или данных типа разработки, но Oracle значительно сложнее администрировать и, следовательно, имеет тенденцию платить премиальную зарплату. Кроме того, только крупные корпорации склонны использовать его, и они, как правило, платят лучше, чем небольшие организации.

Что бы я сделал, если бы хотел начать специализацию в сегодняшнем мире данных, нужно углубиться в один из следующих вариантов:

SQL Server оракул MySql Postgres SQL

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

Если вы заинтересованы в разработке, изучите код SQL на продвинутом уровне для выбранной вами базы данных, изучите базовый дизайн и рефакторинг баз данных, изучите настройку производительности, изучите BI и научитесь создавать отчеты. Если вы узнаете, как создать хранилище данных.

Если вас больше интересует маршрут dba, изучите базовый администратор (создайте резервные копии и восстановите dbs из резервных копий, пользовательской безопасности и т.д.), изучите настройку производительности и расширенный SQl (вы не можете хорошо настроить музыку без расширенного SQL) узнать, как масштабировать базу данных для больших наборов данных (такие вещи, как partioning, приходят на ум) и изучать стратегии для поддержания базы данных в рабочем состоянии 24/7, узнать, как контролировать базу данных, узнать, как настроить оборудование и установить базу данных, узнайте об управлении конфигурацией и рефакторинге базы данных.

Вы также можете инвестировать в изучение одной или нескольких ORMS, которые используются разработчиками приложений.

Ответ 6

MSSQL Server прост в использовании/установке/управлении и обрабатывает практически все важные вещи, которые вам понадобятся.

Если у вас нет конкретного интереса или требования к конкретной базе данных и работы с окнами бесплатно загрузите студию Sql Express и Management и начните с нее играть. http://www.microsoft.com/express/Database/

Ответ 7

Я бы предпочел вам изучить некоторую общую теорию базы данных. Вот мои любимые книги:

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

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

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

И самое главное: Правильный дизайн схемы базы данных всегда имеет значение.

Ответ 8

MSSQL - это то, что я выбрал, я только что закончил с моим B.S. в Comp. Наука, и я видел большинство рабочих мест, желающих MSSQL, не говоря уже о том, что сертификаты проще, а T-SQL действительно не так уж плох. Мне это очень нравится. У него нет всех колоколов и свистков, которые делает Oracle, но я думаю, что Oracle намного сложнее изучить, и я вижу, что все меньше и меньше компаний используют его, потому что это довольно дорого.

Mysql, я заметил, в основном веб-материал, но хорошо знать в любом случае. Службы Reporting Services для MSSQL очень удобны, и он поставляется в одном большом пакете, что упрощает установку. Малые предприятия типа здесь в основном используют MSSQL 2005/2008 из моего опыта.

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

edit: Я также хотел бы добавить, что по какой-то причине я не вижу MYSQL когда-либо "предпочтительным", это oracle или MSSQL, когда дело касается заданий в моей области. Что грустно, потому что я действительно люблю Mysql

Ответ 9

Полное раскрытие, я предвзятый. Я использую MySql в значительной степени исключительно в своей производственной среде. Мои серверы - все Linux, но клиентские приложения, которые я пишу, обычно находятся на С#.NET.

Во всяком случае, он относительно зрелый, а в версии 5 есть много вещей, которые считаются корпоративными функциями, такими как хранимые процедуры и т.д. У меня никогда не было особых проблем с такими вещами, как масштабирование и репликация.

Все аргументы в колоколах и свистах, хотя, похоже, вы используете это в значительной степени для изучения вещей. С этой точки зрения MySql велик:

  • для бесплатного использования
  • независимо от того, какой бренд вы идете с вами, вы узнаете, как составлять запросы и отлаживать/оптимизировать их.
  • есть коннекторы для большинства языков, которые вы хотели бы использовать, - вы упомянули .NET, да, действительно хороший factory разъем для этого
  • Вам не нужны функции bajillion, если вы только начинаете и изучаете веревки... на самом деле функция, сложная для изучения продукта, может быть пугающей.
  • Сообщество MySql довольно велико, и есть много ресурсов, чтобы обратиться, когда вам нужна помощь.