Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » InterBase и FireBird: вопросы по работе и их решение

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104

Открыть новую тему     Написать ответ в эту тему

keon



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
 
jonikDk
посмотри системные таблички MON$...
В табличке MON$ATTACHMENTS есть то что тебе надо.

 
она точно есть в версии 2.1?  
ругается на запрос select * from mon$attachments

Всего записей: 164 | Зарегистр. 21-12-2006 | Отправлено: 14:45 12-06-2009
jonikDk



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
keon
да точно есть.
под каким пользователем пробуешь ?? я лично под sysdba пробую Права надо раздать на доступ к этой таблице и все

Всего записей: 1599 | Зарегистр. 01-03-2004 | Отправлено: 15:16 12-06-2009
keon



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
keon
да точно есть.
под каким пользователем пробуешь ?? я лично под sysdba пробую Права надо раздать на доступ к этой таблице и все

 
хожу под SYSDBA, в списке служебных таблиц тока одни RDB$xxxxxxxx
никакой MON$ATTACHMENTS нету

Всего записей: 164 | Зарегистр. 21-12-2006 | Отправлено: 15:40 12-06-2009
jonikDk



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
keon
слушай тогда однозначно у тебя версия сервера не 2.1 !!! Либо может клиент у тебя старый  
 
Добавлено:
глянь вот Firebird 2.1 Release Notes
http://www.firebirdsql.org/rlsnotesh/rlsnotes210.html#rnfb210-mon

Всего записей: 1599 | Зарегистр. 01-03-2004 | Отправлено: 15:49 12-06-2009
keon



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
keon
слушай тогда однозначно у тебя версия сервера не 2.1 !!! Либо может клиент у тебя старый  
 
Добавлено:
глянь вот Firebird 2.1 Release Notes
http://www.firebirdsql.org/rlsnotesh/rlsnotes210.html#rnfb210-mon

 
я даж все обновил
сервер - 2.1.2-18118
клиент - 6.3.2.18118 (IBExpert 2009/03/25)
 
упорно не видится ничего, настройки сервера дефолтовые
может необходимо в конфиге включить опцию какуюнить??

Всего записей: 164 | Зарегистр. 21-12-2006 | Отправлено: 16:39 12-06-2009
jonikDk



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
под клиентом я имел ввиду клиентскую библиотеку firebird или у тебя сервак на твоей машине ?
У меня Ibexpert еще от 2008 г и нормально все показывает. В эксплорере БД поставил галку показывать системные таблицы ??
Можешь еще через IBexpert попробовать посмотреть следующим образом.
В меню Сервис - Database Monitoring
 
 
Добавлено:
jonikDk
послушай может база у тебя от старых версий Firebird ??

Всего записей: 1599 | Зарегистр. 01-03-2004 | Отправлено: 17:09 12-06-2009
keon



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
jonikDk
послушай может база у тебя от старых версий Firebird ??

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

Всего записей: 164 | Зарегистр. 21-12-2006 | Отправлено: 17:28 12-06-2009 | Исправлено: keon, 17:35 12-06-2009
jonikDk



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
keon
вообщем советую создавать базу скриптом и затем данные заливать со старой базы. Для перезаливки данных можешь воспользоваться IBDataPump, может еще что то такое есть, я давно не переливал данные.  
В начале потестируй заливку, засеки время сколько чего занимает. Потом прогу потестируй вдруг чего надо будет поправить, БД то будет уже обновленная.  Ну и естественно сделай бэкап БД.  
PS. Надеюсь не обидишься, просто на всякий случай пишу

Всего записей: 1599 | Зарегистр. 01-03-2004 | Отправлено: 17:50 12-06-2009
X11



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Можно сделать бэкап на старом сервере, затем рестор на новом сервере, затем выполнить этот скрипт для изменения метеданных
http://www.ibase.ru/firebird/21/metadata_charset.htm

----------
/не мы такие, жизнь такая/

Всего записей: 3253 | Зарегистр. 24-11-2005 | Отправлено: 18:21 12-06-2009
and23

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
2keon: Для сервера 2.1 "родная" ODS - 11.1. Если версия ODS у Вас ниже, но сервер 2.1 - просто сделайте backup/restore (с опцией пересоздания). Ессно, пользователей надо на это время отрубить. Для базы в несколько гиг процедура займёт 10-15 мин.
А чарсет (см. пост X11) надо проверять _до_, а не _после_ b/r. Но с большой вероятностью это не понадобится.

Всего записей: 567 | Зарегистр. 10-09-2003 | Отправлено: 18:50 12-06-2009
keon



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
сам файл бд я обновил, теперь таблицы мониторигна доступны, всем спасибо ваши рекомендации помогли
 
но вот при опросе MON$CHARACTER_SET_ID всегда выдается 0, как из клиента до момента коннект (на который собственно и срабатывает триггер ON CONNECT) установить требуемый CHARACTER SET чтобы потом в триггере его проверить???

Всего записей: 164 | Зарегистр. 21-12-2006 | Отправлено: 15:25 15-06-2009
X11



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
установить требуемый CHARACTER SET  

а ты при подключении разве не устанавливаешь?

----------
/не мы такие, жизнь такая/

Всего записей: 3253 | Зарегистр. 24-11-2005 | Отправлено: 15:55 15-06-2009
and23

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
2keon: Подать его в параметрах коннекта? Типа такого:
Код:
lc_ctype=WIN1251
user_name=SysDBA
password=masterke

Всего записей: 567 | Зарегистр. 10-09-2003 | Отправлено: 15:59 15-06-2009
keon



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
2keon: Подать его в параметрах коннекта? Типа такого:
Код:
lc_ctype=WIN1251
user_name=SysDBA
password=masterke
 

 
именно так и передаю кодировку в компоненте прописал, но при отработке триггера
другая кодировка:
 
  select r.RDB$CHARACTER_SET_NAME
  from MON$ATTACHMENTS m
  join RDB$CHARACTER_SETS r on (r.RDB$CHARACTER_SET_ID=m.MON$CHARACTER_SET_ID)
  into :C_TYPE;

 
  insert into TABLE(C_TYPE) values(:C_TYPE);
 
но в таблице всегда будет NONE

Всего записей: 164 | Зарегистр. 21-12-2006 | Отправлено: 09:26 16-06-2009
Alexy780



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Уважаемые, а вот не подскажете ли, как передавать Encription_password при использовании IBDAC и Interbase 2009 (которая, наконец-то, стала поддерживать шифрование файлов баз данных)?

Всего записей: 44 | Зарегистр. 19-03-2008 | Отправлено: 14:06 16-06-2009
and23

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
2keon: Проверил коннект в IBExpert'е - всё работает правильно: в Mon$Attachments.RDB$Character_Set_ID 0, если коннекчусь с NONE, 3 - если UNICODE_FSS, 52 - WIN1251 и т.д.
Какие компоненты используете?
Что показывает IBExpert в Mon$Attachments.RDB$Character_Set_ID, когда подключен Ваш клиент?

Всего записей: 567 | Зарегистр. 10-09-2003 | Отправлено: 19:38 16-06-2009
ZalivkoDenis



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
keon
Послухай дружище, тут тебе все советут, но, такое ощущение, что никто никогда не перекуливал базы в FB c верси, например, 1.5 в 2.1 Потому что, если бы пробовали, то знали, что конвертация обязательна не только базы пользователей, но и самих баз, созданных под более старыми версиями.  
Для миграции 2.0 - 2.х достаточно только backup-restore. База данных восстановится с нужной ODS.
А вот для ранних миграций, , есть в папочке, в которую инсталится FB2.x есть misc\upgrade\metadata\ Так вот там файлики, которые тебе обязательно помогут. В частности, там есть .txt, в котором описана процедура апдейта чарсета БД (повторюсь - необходимая процедура при миграции с ранних версий).  
Короч, если не получится и для тебя это всё ещё актуально, стукни в ПМ, я тебе скриптик дам (для удобства миграции в один скрипт засунул всё, что нужно для charset fix) после исполнения которого всё замечательно работает (предприятий на бслуживании масса, серверов море, а баз, соотвественно ещё больше - влом было по несколько раз одни и те же действия проводить, а новый FB2.1 очень хотелось. Уже правда FB2.1.2 стоит ). Вообще-то, фаербирдовцы могли и сами всё в один скрипт засунуть, но, видимо, решили, чтобы разрабы БД немного головой подумали ... Короче, если нуна -- пиши.
Удачи!

Всего записей: 537 | Зарегистр. 06-10-2005 | Отправлено: 21:08 16-06-2009
jonikDk



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ZalivkoDenis

Цитата:
Послухай дружище, тут тебе все советут, но, такое ощущение, что никто никогда не перекуливал базы в FB c верси, например, 1.5 в 2.1

я предложил беспроигрышный вариант создать из скрипта и перезалить

Всего записей: 1599 | Зарегистр. 01-03-2004 | Отправлено: 23:12 16-06-2009
ZalivkoDenis



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
jonikDk
Не хочется разводить флейм, но, то что ты советуешь -- не совсем модно И не такой уж это беспроигрышный вариант. Если база из 2-х таблиц -- всё отлично, перелить -- не проблема. А если в базе, скажем 500-600 таблиц, около 1500 процедур, связи и т.д. и т.п. Да ещё размер (данные) порядка 4-5 Гб... Пользоваться твоим способом? Зачем??? Если разработчики Firebird предлагают абсолютно нативное средство
Цитата:
Для перезаливки данных можешь воспользоваться IBDataPump, может еще что то такое есть, я давно не переливал данные.

Вот-вот, ключевое слово "может ещё что такое есть"... Не что-то такое, а, если пойти твоим путём, то нужно тогда не только скрипт на обновление метаданных, но и скрипт на добавление данных. С этим вполне замечательно справляется IBExpert (пункт "Инструменты->Извлечение метаданных"). Вот там можно выставить не только создание скриптов метаданных, но и извлечение данных. Кстати, BLOBs тоже извлекает . Единственное, на что нужно обратить внимание, так это на то, что для выполнения результирующего скрипта (скажем так, там туева хуча скриптов) необходимо наличие файлика IBEScript.exe (идёт в комплекте с сабжем)... Ну, это вкратце. Этим методом я пользовался, когда с юзерами (настройками прав на объекты) проблемосы были -- бывает так запутаешься, что не распутать -- приходилось всё ломать (имеется ввиду настройки безопасности). Вот тогда этот метод -- просто супер!
А для миграции -- пользуемся нативным методом от разрабов.

Всего записей: 537 | Зарегистр. 06-10-2005 | Отправлено: 09:59 17-06-2009
keon



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
and23
 
все разрулил, я теперь явно перед опеном прописал параметр  
 
IBDatabase.Params.Add('lc_ctype=WIN1251');
 
и теперь MON$CHARACTER_SET_ID = 52
а когда было прописано в свойствах IBDatabase, он его не видел..
 
версию сервера и бд успешно обновил до версии 2.1.2, всем спасибо за участие и помощь!!!

Всего записей: 164 | Зарегистр. 21-12-2006 | Отправлено: 16:48 17-06-2009
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » InterBase и FireBird: вопросы по работе и их решение


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru