|
|
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. Есть БД на MySQL 5.0 с клиентским приложением на C#, связь с базой через официальный .NET Connector от MySQL. Клиент и сервер на одном компьютере. Необходимо как-то перенести базу на Embedded вариант (чтобы каждому новому пользователю не приходилось устанавливать и настраивать сервер). Самый главный критерий переноса - по возможности, сделать это с минимумом возни, без необходимости перелопачивать весь код базы и клиента, так как сроки поджимают. Естественно, клиент должен остаться на .NET ) Естественно, что напрашивается - MySQL Embedded. Но он платный, а наш проект некоммерческий, и лицензию никто покупать не собирается. Пока не нашел, где можно его скачать в обход лицензии, да и нежелательно это. Как быть, куда лучше перенести базу с MySQL (да, я знаю, что есть SQLite, Firebird Embedded, VistaDb, но что лучше подойдет в данном случае?) Требования к СУБД самый простые: внешние ключи, хранимые процедуры, поля типа BLOB. Размер базы небольшой, и производительность большой роли не играет. Буду рад советам. P.S. от варианта встроить установку MySQL сервера в инсталлятор проекта, я отказался, так как не вижу путей для его реализации. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2009, 19:39 |
|
||
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
Стурм, что будете хранить в LOB'ах, какого объёма? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2009, 02:30 |
|
||
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
ОКТОГЕН, числа типа double, в среднем 200-400 чисел на блоб. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2009, 09:49 |
|
||
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
Стурм ...есть SQLite... Требования к СУБД самый простые: внешние ключи, хранимые процедуры, поля типа BLOB. Размер базы небольшой, и производительность большой роли не играет. В SQLite нет поддержки внешних ключей. Их можно создать, но движок их не видит. Кроме того нет хранимых процедур. Только view и triggers. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2009, 10:40 |
|
||
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
Посоветую автору Firebird Embedded. Функционал такой же как у обычного сервера. Есть оффициальный NET провайдер. А вот скорость переноса с MySQL зависит от того насколько знаете эту субд ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2009, 12:31 |
|
||
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
СтурмТребования к СУБД самый простые: внешние ключи, хранимые процедуры, поля типа BLOB. Размер базы небольшой, и производительность большой роли не играет. Если производительность роли не играет я-бы попробовал VistaDB. Технология вроде-как "родная". Стыковаться будет проще (IMHO). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2009, 13:05 |
|
||
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
а пчемуб не сделать инсталятор который сам бы настраивал mysql? --- вечно ваш бох ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2009, 14:39 |
|
||
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
При чём здесь инсталлятор? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2009, 17:10 |
|
||
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
maytonЕсли производительность роли не играет я-бы попробовал VistaDB. Пусть они с Вистой обышной сначала разбирутца, а потом и в ДБ лезут. Года через 3, как все устаканится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2009, 18:57 |
|
||
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
SQL Server Compact. Родная для .NET файловая InProc база данных. Бесплатная. Очень совместима со "взрослым" MS SQL Server. Есть контроль ссылочной целостности, но нет триггеров и ХП. Может быть получится заменить MySqlConnection на SqlCeConnection и все заработает :) Читайте Techdays . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2009, 19:04 |
|
||
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
пгуые1234Посоветую автору Firebird Embedded. Функционал такой же как у обычного сервера. Есть оффициальный NET провайдер. А вот скорость переноса с MySQL зависит от того насколько знаете эту субд ;) Давно была пара проектов на Firebird (не embedded). Скажите пожалуйста, есть ли какие-то "подводные камни" при переносе и сильно ли отличается синтаксис SQL? шалома пчемуб не сделать инсталятор который сам бы настраивал mysql? Как? maytonЕсли производительность роли не играет я-бы попробовал VistaDB. Технология вроде-как "родная". Стыковаться будет проще (IMHO). Она платная, насколько я вижу из поисковика. A8086SQL Server Compact. Родная для .NET файловая InProc база данных. Бесплатная. Очень совместима со "взрослым" MS SQL Server. Есть контроль ссылочной целостности, но нет триггеров и ХП. без ХП - это очень большой минус ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2009, 19:51 |
|
||
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
Стурмбез ХП - это очень большой минус Прикалываетесь? Или неподумав ступили? Для embedded то какая куй разница, где циклы располагаются - в приложении, или же во внедрённом в приложение БД? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2009, 01:36 |
|
||
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
Стурмбез ХП - это очень большой минус Действительно, глупость сказали. Подумайте сами, во встраиваемых движках нет сервера как такового. Распределять функции некуда. А вся логика СУБД работает в собственном процессе Вашего приложения. Поэтому и называется это InProc СУБД (In process). Кстати, если я не ошибаюсь, то SQLLite нет поддержки ссылочной целостности, за то есть триггеры, при помощи которых ее можно реализовать. А Sql Server Compact наоборот :). Впрочем могу и ошибаться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2009, 07:44 |
|
||
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
СтурмДавно была пара проектов на Firebird (не embedded). Скажите пожалуйста, есть ли какие-то "подводные камни" при переносе и сильно ли отличается синтаксис SQL? гм. Embedded НИЧЕМ от не-embedded не отличается, кроме следующих пунктов: 1. коннект должен быть "локальный", иначе он перенаправит коннект на сервер. Т.е. может работать как обычный клиент. 2. коннекты из разных exe не допускаются, т.к. exe приложения и dll FB embedded и представляют собой "сервер". вроде все. SQL не отличается и отличаться не может. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2009, 11:53 |
|
||
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
maytonПри чём здесь инсталлятор?как при чём ТС написал же что основная причина чтобы небыло необходимости настраивать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2009, 12:23 |
|
||
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
СтурмКак?посмотрите например как это сделанов denwer там автоматически ставится апатч + мускл и всё сразу настроено ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2009, 12:23 |
|
||
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
ЛПСтурмбез ХП - это очень большой минус Прикалываетесь? Или неподумав ступили? Для embedded то какая куй разница, где циклы располагаются - в приложении, или же во внедрённом в приложение БД? Попрошу не выражаться. Меня совсем не тянет переносить пару сотен ХП в код приложения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2009, 13:25 |
|
||
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
kdvSQL не отличается и отличаться не может. ТС спрашивает про отличие от мускуля. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2009, 13:41 |
|
||
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
A8086Действительно, глупость сказали. Подумайте сами, во встраиваемых движках нет сервера как такового. Распределять функции некуда.Для FB есть разница. Если держать логику в базе, то потом приложение без проблем будет работать не только с embedded, но и сетевой редакцией сервера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2009, 14:19 |
|
||
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
Senya_LA8086Действительно, глупость сказали. Подумайте сами, во встраиваемых движках нет сервера как такового. Распределять функции некуда.Для FB есть разница. Если держать логику в базе, то потом приложение без проблем будет работать не только с embedded, но и сетевой редакцией сервера. Благодарю, еще один весомый агрумент, вдобавок к вышеуказанному. Dimitry Sibiryakov kdvSQL не отличается и отличаться не может. ТС спрашивает про отличие от мускуля. В общем да, некоторые СУБД используют свои диалекты SQL (классический пример - Oracle и PL\SQL), это я имел ввиду, но при переносе MySQL -> Firebird не думаю, что будет много проблем с самим SQL-скриптом, поэтому спрашивал просто на всякий случай. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2009, 15:14 |
|
||
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
2 Стурм Попрошу не выражаться. Попрошу не просить. Меня совсем не тянет переносить пару сотен ХП в код приложения. Тянет Вас или не тянет - а переносить пару сотен ХП так или иначе придётся, раз уж СУБД собираетесь менять. ------------------ 2 Senya_L Если держать логику в базе, то потом приложение без проблем будет работать не только с embedded, но и сетевой редакцией сервера. Можно подумать, что кто-то мешает приложению без проблем работать хоть с embedded, хоть с сетевой версией в случае, если логика хранится в приложении или в среднем слое. Я не агитирую за многозвенные архитектуры, но давайте уж называть вещи своими именами. Именно вынос логики за пределы СУБД позволяет сравнительно безболезненно эту самую СУБД менять (хоть редакции, хоть вообще всю СУБД). И наоборот, написание логики на уровне БД усиливает связанность с СУ, и в дальнейшем может привести к тоскливому соплежеванию на тему "переноса пары сотен ХП". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2009, 17:42 |
|
||
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
авторя имел ввиду, но при переносе MySQL -> Firebird не думаю, что будет много проблем с самим SQL-скриптом, поэтому спрашивал просто на всякий случай. все СУБД различаются как по синтаксису, так и по архитектуре. Так что все зависит от того, насколько использовали специфику конкретного SQL. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2009, 17:46 |
|
||
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
Стурм пишет: > Естественно, что напрашивается - MySQL Embedded. Но он платный, а наш > проект некоммерческий, и лицензию никто покупать не собирается. Пока не > нашел, где можно его скачать в обход лицензии, да и нежелательно это. Я не знаю, какой он там платный, но исходники есть в дистрибутиве исходников. Собственно, всех исходников там -- проект, собирающих из MySQL либу, а не приложение. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2009, 20:32 |
|
||
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
ЛП Тянет Вас или не тянет - а переносить пару сотен ХП так или иначе придётся, раз уж СУБД собираетесь менять. Тем не менее, гораздо проще подправить SQL-скрипт создания базы, чем затрагивать еще и клиентский код. А вопрос, стоит ли выносить хранимые процедуры из БД - очень спорный, и вполне заслуживающий отдельной темы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2009, 12:44 |
|
||
|
БД с MySQL на какую-нибудь Embedded базу под .NET
|
|||
|---|---|---|---|
|
#18+
Товарищи! Благодарю вас всех за ценные советы! Благодаря вам, я наметил несколько решений сложившейся проблемы, таких как: MySQL Embedded. Напрямую использовать libmysqld.dll в проектах на .NET, по понятным причинам нельзя (использование DllImport не в счет). Не далее как полгода назад официальный .NET Connector еще не поддерживал embedded версию mysql. Судя по документации на самую последнюю версию коннектора - не поддерживает до сих пор. Примеров использования нет с embedded, ничего нет. Вот тут есть другой коннектор с поддержкой встраиваемой версии... но платный. Возможно, запрос напрямую в MySQL что-то прояснит. Firebird Embedded. Первоочередной кандидат для переноса, если с MySQL не получится. SQL Server Compact. А это СУБД само собой напрашивается для разработки "с нуля" .NET проектов со встраиваемыми БД. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2009, 12:47 |
|
||
|
|

start [/forum/topic.php?fid=35&fpage=20&tid=1552920]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
29ms |
get topic data: |
8ms |
get forum data: |
3ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
| others: | 12ms |
| total: | 138ms |

| 0 / 0 |
