Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » MySQL - преобразование запрсов и результатов MySql <-> MsSQL на лету

Ответить
Настройки темы
MySQL - преобразование запрсов и результатов MySql <-> MsSQL на лету
ex2 ex2 вне форума

Пользователь


Сообщения: 60
Благодарности: 6

Профиль | Отправить PM | Цитировать


Есть клиентский софт, заточен под MySql сервер. Есть желание пользовать вместо последнего MsSQL сервер, но клиентский софт переписывать разработчик не хочет (при замене сервера лицензия на софт остается). При этом напрашивается некий аналог прокси, который принимает запрос клиентского софта к MySql серверу, перекидывал (возможно с правкой) запрос на MsSQL сервер, получал от него данные и отдавал данные в формате выдачи MySql клиентскому софту. При этом делал это _быстро_.
Возможно существуют подобные реализации, либо такая операция делается более культурно?

Отправлено: 10:31, 04-09-2008

 

Аватара для vadimiron

Ветеран


Сообщения: 1864
Благодарности: 120

Профиль | Отправить PM | Цитировать


Цитата ex2:
такая операция делается более культурно »
Такое делается изначально с помощью адаптеров, которые абстрагируются от конкретной базы данных - то есть надо переписывать клиентский софт.
Всё остальное сопряжено с потерей времени и кучей ошибки - переписать намного быстрей, тем более запросы к базе данных обычно не так много строк кода занимают.

-------
Fortes fortuna adiuvat


Отправлено: 12:41, 04-09-2008 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 3806
Благодарности: 824

Профиль | Отправить PM | Цитировать


Цитата vadimiron:
Такое делается изначально с помощью адаптеров, которые абстрагируются от конкретной базы данных »
подобный подход превращает базу данных в некое абстрактное хранилище массивов.
Цитата vadimiron:
запросы к базе данных обычно не так много строк кода занимают »
в контексте MySQL - скорее всего вся бизнес логика реализована в клиенте.

Отправлено: 13:55, 04-09-2008 | #3

ex2 ex2 вне форума Автор темы

Пользователь


Сообщения: 60
Благодарности: 6

Профиль | Отправить PM | Цитировать


Часть б. логики остается на сервере (включающем сервер приложений, зависящий от сервера MySql ), с которым удаленно работает упоминавшееся выше клиентское ПО. Его разработчик, конечно же, выкатил энную сумму за перевод всей системы на MsSQL и win, что несколько грустно )
Хотелось сохранить старую функциональность (сервер на базе linux) и "заменить только SQL сервер" использовав купленый предприятием. Соответственно, ищу решение под *nix но чувствую - не найду (

Отправлено: 15:24, 04-09-2008 | #4


Аватара для vadimiron

Ветеран


Сообщения: 1864
Благодарности: 120

Профиль | Отправить PM | Цитировать


Цитата ex2:
Хотелось сохранить старую функциональность (сервер на базе linux) и "заменить только SQL сервер" »
Подсоединяться к SQL серверу с Линкса - это не проблема, надо кое что настроить - но не сложно.

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

-------
Fortes fortuna adiuvat


Отправлено: 16:26, 04-09-2008 | #5


Аватара для Amin

Новый участник


Сообщения: 38
Благодарности: 3

Профиль | Отправить PM | Цитировать


Цитата:
Подсоединяться к SQL серверу с Линкса - это не проблема, надо кое что настроить - но не сложно.
Хм, даже интересно стало. Я в свое время пытался с линуксовой машины подсоединиться к M$SQL 2005, и так и не смог заставить это работать. Практически везде для этого рекомендуют использовать пакет FreeTDS, но он давно не обновлялся и самая старшая версия M$SQL, для которой заявлена работоспособность - 2000. Если не затруднит, было бы интересно услышать толковые мысли насчет работы из *nix-систем с MSSQL 2005 / 2008.

Цитата:
Но вам же нужно также в коде всё переписать, чтобы мочь работать с другой базой данных. Если будете платить кому то за переделывание кода, то требуйте тогда, чтобы кода независимо от конкретной базы данных писался - соответствующий классов и наработок в интернете полно и не требуют долго переобучения
1С уже показала нам пример такого подхода. База из тысячи таблиц, полный игнор индексов, соединения по *текстовым ключам* + кривой транслятор для PostgreSQL в 1С 8.1. В результате - четыре заявленных хранилища (файловое, M$SQL, PgSQL, DB2) - и поддержка каждого не без кривизны.

ИМХО, разумнее выбрать одну базу, исходя из требований, и сделать работу с оной действительно по уму, а не как у 1С.
Кстати, в современных условиях цена начинает иметь значение. Помните, что при больших базах (> 4 Гб) и большом числе соединений (MSSQL еще и клиентские лицензии содержит) MSSQL - это ни разу не дешево.

А если MySQL не тянет нагрузку - сперва попробуйте заняться оптимизацией запросов. В них - суть зла.
Смена БД - это уж совсем крайняя мера, чатсо заканчивающаяся созданием новго проекта почти с нуля.
Если уж будете менять - посмотри в сторону PostgreSQL. Это того стоит.

-------
xmpp:Aminux@jabber.ru


Отправлено: 00:04, 01-02-2009 | #6



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » MySQL - преобразование запрсов и результатов MySql <-> MsSQL на лету

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Прозрачное шифрование файлов на лету SeRRgIO Программное обеспечение Windows 3 07-09-2012 21:05
Интернет - На машине пропал интернет (целый день потерял, а результатов 0) fate29 Microsoft Windows 2000/XP 6 25-08-2009 12:04
Вопрос. MSSQL и MySQL 1XTR Вебмастеру 2 15-03-2007 19:00
команда ./configure не дает результатов DEM0N Общий по Linux 13 02-09-2004 08:29
Сгенерировать новую страничку на лету. BigMarkus Вебмастеру 2 20-09-2003 22:45




 
Переход