Sysdba пароль по умолчанию firebird


Смена пароля пользователя SYSDBA в СУБД Firebird 2.5 [Вики IT-KB]

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

В каждом вновь развёрнутом экземпляре Firebird присутствует пользователь с именем SYSDBA, который имеет полные привилегии в рамках этого экземпляра. Пароль по умолчанию для данного пользователя masterkey (на самом деле masterke, так как для пароля символы после восьмого игнорируются). В целях безопасности сразу после запуска нового экземпляра Firebird мы должны сменить пароль этого пользователя.

Перейдём в каталог с исполняемыми файлами экземпляра Firebird и с помощью утилиты gsec подключимся к базе данных пользователей (файл security2.fdb в каталоге с экземпляром) командой следующего вида:

cd /d D:\FBInst1\Bin\bin gsec -user sysdba -password masterke -database "localhost/3051:D:\FBInst1\Bin\security2.fdb"

Войдя в интерактивный режим работы с утилитой gsec, выполняем команду смены пароля:

modify sysdba -pw newP@s$w

При указании пароля помните про то, что Firebird 2.5 игнорирует в пароле символы больше восьмого, поэтому задавать пароль длинной больше 8 символов нет смысла.

Обратите внимание на то, какой мы используем путь к файлу БД security2.fdb. Это важный момент для конфигураций, когда на одном сервере выполняется несколько экземпляров Firebird. Если мы попытаемся использовать простое указание локального пути на файловой системе вида D:\FBInst1\Bin\security2.fdb, то можем столкнуться со странной ситуацией, при которой оба запущенных экземпляра Firebird будут пытаться использовать один и тот же файл security2.fdb. Это может вызвать серьёзную путаницу при работе с утилитой gsec для настройки двух разных экземпляров. Именно поэтому лучше использовать подключение к экземпляру через протокол TCP, явно указывая адрес хоста и порт экземпляра Firebird, а также относящийся к нему файл security2.fdb.

После того, как пароль задан, завершим сессию работы с утилитой gsec с помощью команды quit и вновь попробуем воспользоваться этой утилитой, но уже при подключении укажем новый пароль, убедившись тем самым в том, что старый пароль по умолчанию больше не работает, а используется новый установленный нами пароль.

Описанным способом меняем пароль, используемый по умолчанию, для пользователя SYSDBA на всех отдельный экземплярах Firebird. Разумеется, для разных экземпляров при этом в целях безопасности лучше использовать разные пароли.

Кстати входить в интерактивный режим работы с утилитой gsec для смены пароля SYSDBA не обязательно. Можно выполнить смену пароля одной командой, указав в ней и действующий в экземпляре пароль и новый пароль, который необходимо установить. Посмотрим, как это делается на примере нашего второго экземпляра:

cd /d E:\FBInst2\Bin\bin gsec -user sysdba -password masterke -database "localhost/3052:E:\FBInst2\Bin\security2.fdb" -modify sysdba -pw newPAz$w

И опять же. Для проверки, после смены пароля, попытаемся подключиться к базе данных security2.fdb, относящейся к нашему второму экземпляру Firebird, сначала со старым паролем, который ранее был установлен по умолчанию, а затем с тем паролем, который мы задали.

Результат должен быть предсказуемым.

Таким образом, мы заменили пароль пользователя SYSDBA на всех экземплярах Firebird, улучшив тем самым уровень их безопасности.


Проверено на следующих конфигурациях:

Версия ОС Версия Firebird
Windows Server 2012 R2 Standard EN (6.3.9600) 2.5.8 32-bit
Windows Server 2012 R2 Standard EN (6.3.9600) 2.5.9 64-bit

Автор первичной редакции:
Алексей Максимов
Время публикации: 06.11.2018 23:01

Что еще может понадобиться

Для управления учетными записями пользователей в составе пакета Firebird поставляется утилита командной строки gsec.

Важно

В некоторых инсталляциях Firebird запуск утилиты gsec возможен только при входе в систему от имени привилегированного пользователя (например, root в системе Linux) или пользователя, от имени которого происходит запуск серверного процесса Firebird. На серверных системах Windows для использования утилиты gsec, обычно, Вы должны быть членом группы Power User или другой правомочной группы.

Если Вы уверены, что у Вас достаточно привилегий, но использование gsec заканчивается сообщениями типа «unavailable database - unable to open database» - возможно, сервер не запущен. Вернитесь к разделу Тестируем то, что установили и попробуйте устранить причину.

Если Вы уверены, что у Вас достаточно привилегий, но использование gsec заканчивается сообщениями типа «unavailable database - unable to open database»:

  • либо Вы используете Windows Classic Server и указываете неверное значение параметра -database (см. далее), либо

  • возможно, сервер не запущен, в этом случае, вернитесь к разделу Тестируем то, что установили и попробуйте устранить причину.

Предположим, Вы решили сменить пароль SYSDBA на icuryy4me.

Замечание

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

Изменение пароля SYSDBA

Изменение пароля SYSDBA

Скрипт changeDBAPassword.sh позволяет изменить пароль для пользователя SYSDBA (администратора баз данных) и изменить владельца других, стартующих автоматически (startup), скриптов. Скрипт выполняется в неинтерактивном режиме, как часть процесса установки (при установке создаётся случайно сгенерированный пароль, который сохраняется в файле /opt/firebird/SYSDBA.password). Пароль в последствии используется при запуске скрипта /etc/rc.d/init.d/firebird, который также является символической ссылкой на /etc/init.d/firebird. Новый пароль также изменяется в базе данных безопасности (с логинами и паролями пользователей) /opt/firebird/security.fdb.

Предостережение

Скрипт должен выполняться пользователем root, и в процессе выполнения сначала будет запрошен ввод текущего пароля SYSDBA, а затем нового пароля. Оба пароля будут видны на экране, поэтому для повышения безопасности не позволяйте никому смотреть на экран при выполнении скрипта.

После выполнения скрипта файл /opt/firebird/SYSDBA.password будет содержать новый пароль в текстовом виде, поэтому убедитесь, что этот файл не доступен для чтения никому, кроме пользователя root.

Следующий пример показывает изменение пароля SYSDBA с 'masterkey' на 'biroguin', который не является словом и будет более устойчив к взлому и угадыванию.

# cd /opt/firebird/bin # ./changeDBAPassword.sh Please enter current password for SYSDBA user : masterkey Please enter new password for SYSDBA user : biroguin GSEC> GSEC> Running ed to modify /etc/init.d/firebird #

Предостережение

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

Пользователь SYSDBA и пароль. Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ

Читайте также

Список всех групп, в которые входит пользователь 

Список всех групп, в которые входит пользователь  В сценарии ListGroups.js, который представлен в листинге 11.8, на экран выводятся названия всех локальных групп, в которые входит пользователь Popov на рабочей станции 404_Popov (рис. 11.7). Рис. 11.7. Список всех групп, членом которых

2.6. Пароль

2.6. Пароль Последнее, что нам нужно указать, — это пароль администратора системы (root). В Linux, как и в Windows XP Professional (не путать с Home Edition), нельзя входить без пароля, подобно Windows 9x. Вы обязательно должны указать имя пользователя и пароль, под которым будете работать, и в

3.3.2. Забытый пароль

3.3.2. Забытый пароль Что делать, если вы забыли пароль, или хакер проник в систему и изменил его? Действительно, ситуация не из приятных, но все решаемо. Если у вашей учетной записи есть доступ к файлу /etc/shadow, то можно заняться его редактированием, а если нет, то посмотрим, как

Проблема 2. Как войти в систему как пользователь root

Проблема 2. Как войти в систему как пользователь root По умолчанию нельзя войти в систему как пользователь root в графическом режиме. Чтобы получить полномочия пользователя root, придётся в окне терминала использовать команду su. Чтобы войти как пользователь root в графическом

3.2. Кто такой пользователь Интернета

3.2. Кто такой пользователь Интернета Все попытки определить пользователя Интернета, дать ему четкое и однозначное толкование провалились. Поэтому не следует верить никаким цифрам, которые публикуются сегодня в прессе. Сначала нужно выяснить, кого автор называет

Помните: в Интернете пользователь может делать все, что захочет

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

Пароль S. D. F.

Пароль S. D. F. * А, понял, примитивный пароль, кнопочки под левой рукой.- Пароль не распознан. В доступе отказано…* Ладно, вторая попытка, помнится есть расширение sdf – вроде это база данных?- Уже теплее…* Третья попытка, третья… сдаюсь.- Вообще-то пароль SQL Delphi Firebird.- Поставлена

Мастер Фу и конечный пользователь

Мастер Фу и конечный пользователь В другой раз, когда Мастер Фу давал публичную лекцию, один пользователь, наслушавшись рассказов о мудрости Учителя, подошел к нему за советом.Он трижды поклонился Мастеру Фу. "Я хочу постичь тайны Великого Пути, но командная строка вводит

Мастер Фу и конечный пользователь

Мастер Фу и конечный пользователь В другой раз, когда Мастер Фу давал публичную лекцию, один пользователь, наслушавшись рассказов о мудрости Учителя, подошел к нему за советом.Он трижды поклонился Мастеру Фу. "Я хочу постичь тайны Великого Пути, но командная строка вводит

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

Пользователь SYSDBA Новые инсталляции Firebird для Windows устанавливают в базу данных безопасности пользователя SYSDBA с паролем masterkey. Очевидно, что это известно всем, и не может использоваться для безопасности. Пароль должен быть изменен в первую очередь.Под Linux некоторые

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

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

Имя пользователя и пароль

Имя пользователя и пароль Когда Firebird проверяет полномочия при запуске gbak, он определяет пользователя в соответствии со следующей иерархией:1. Имя пользователя и пароль, заданные переключателями в команде gbak.2. Только для локального варианта gbak[149]. Имя пользователя и

15 полезнейших приёмов, которые должен знать каждый пользователь iPhone и iPad Олег Нечай

15 полезнейших приёмов, которые должен знать каждый пользователь iPhone и iPad Олег Нечай Опубликовано 28 октября 2013 Далеко не все владельцы популярных смартфонов iPhone и планшетов iPad, работающих под управлением операционной системы iOS 6 и 7, действительно

ФМ-ВЕЩАНИЕ: Пользователь 2.0

ФМ-ВЕЩАНИЕ: Пользователь 2.0 Автор: Феликс МучникWeb 2.0, Office 2.0, Enterprise 2.0 — сколько еще появится сокращений, привязанных к модной концепции? Контент, создаваемый самими клиентами и раздаваемый самостоятельно умными серверами-сервисами. Все это классно, только непонятно, кто

Как выглядит пользователь для Microsoft Kinect 2.0 Андрей Васильков

Как выглядит пользователь для Microsoft Kinect 2.0 Андрей Васильков Опубликовано 04 октября 2013 Контроллер Kinect версии 2.0 появится в игровой приставке восьмого поколения Microsoft Xbox One, официальные продажи которой начнутся в конце ноября. Как выглядит мир

Пароль по умолчанию в FireBird

 
Vendict ©   (2007-03-15 19:11) [0]

Подскажите пожалуйста пароль по умолчанию для пользователя "public". что-то в руководстве об этом не слова...


 
atruhin ©   (2007-03-15 19:17) [1]

По умолчанию:
пользователь - SYSDBA
пароль - masterke


 
Rouse_ ©   (2007-03-15 19:19) [2]

пароль - masterkey


 
Megabyte ©   (2007-03-15 19:20) [3]

Разве для пользователя Public пароль masterkey?
Вроде у него пустой, а вот у Sysdba да - masterkey


 
atruhin ©   (2007-03-15 19:42) [4]


> [3] Megabyte ©   (15.03.07 19:20)
> Вроде у него пустой,

А разве по умолчанию создается пользователь Public? Вроде только SYSDBA?

> [2] Rouse_ ©   (15.03.07 19:19)
> пароль - masterkey

Вообще то я правильно написал, не веришь проверь! :)


 
Vendict ©   (2007-03-15 19:43) [5]

вот именно, не админский нужен пароль, а пользовательский, от пользователя "public", пустой не подходит...


 
Vendict ©   (2007-03-15 19:46) [6]

хуже того... как оказалось такого пользователя вообще нет. есть только SYSDBA по умолчанию. всё, тема исчерпала себя.


 
Desdechado ©   (2007-03-15 19:53) [7]

public - ЭТО встроенная роль


 
Rouse_ ©   (2007-03-15 20:44) [8]


> atruhin ©   (15.03.07 19:42) [4]
> Вообще то я правильно написал, не веришь проверь! :)

Проверять негде, но раз ты так говоришь, то у меня предположение о ограничении в 8 символов. Оно? :)


 
Алхимик ©   (2007-03-15 21:07) [9]

> [8] Rouse_ ©   (15.03.07 20:44)

Проверил - оно. :)
ps. FB 1.5


 
Piter ©   (2007-03-15 21:08) [10]

Rouse_ ©   (15.03.07 20:44) [8]
Проверять негде, но раз ты так говоришь, то у меня предположение о ограничении в 8 символов. Оно? :)

верно, в FB все символы пароля больше 8-ми обрезаются.

А забавно смотреть, как люди прочитали заголовок темы, но абсолютно не читали содержимого :)


База данных в облаке. Установка Firebird на VDS. [DataExpress Wiki]

Что делать если нужен централизованный доступ к базе данных DataExpress через Интернет, а возможности выделить для этих целей отдельный сервер нет? На помощь придет VDS. VDS - это виртуальный сервер со своей операционной системой. Вы можете выполнять те же действия, что и с обычным компьютером: устанавливать различные приложения, настраивать права доступа. VDS уже имеет выделенный IP-адрес, который можно использовать для доступа к своим приложениям и сервисам. К тому же виртуальный сервер работает круглосуточно. Управление сервером осуществляется удаленно. Удовольствие это, правда, не бесплатное, но и не дорогое. На подавляющем большинстве VDS устанавливается ОС Linux. VDS с ОС Windows будут значительно дороже.

В этой статье я расскажу как настроить ОС Ubuntu 16.04 и Firebird 2.5 Classic, чтобы пользователи DataExpress могли получить доступ к базе, находящейся на VDS. Честно говоря, я сам недавно стал интересоваться этим вопросом, да и с Linux мало знаком. Но погуглив в интернете, смог по крупицам добыть нужную информацию. И вот теперь хочу поделиться этой информацией с вами. Я не буду особо разъяснять назначение команд, главное - это в точности повторить все действия. Подробную информацию по командам вы можете найти в интернете. Также я не буду рассказывать о том, какой VDS хостинг лучше выбрать и как создавать VDS. Эту информацию вы найдете на VDS хостинге. Для пробы можно выбрать самый дешевый вариант. Далее предполагается, что вы уже нашли подходящий VDS хостинг и установили ОС Ubuntu 16.04. Поехали.

Для удаленного управления сервером установите программу Putty. На рисунке показаны настройки программы по умолчанию. Их менять не нужно. Введите IP-адрес сервера (IP-адрес сервера, а также пароль root вам должны прислать на почту после установки системы на VDS) и нажмите кнопку «Open». Должна открыться консоль. Войдите в систему под пользователем «root». При вводе пароля курсор не двигается - так и должно быть. Можно сразу сменить пароль пользователя на подходящий. Для этого воспользуйтесь командой passwd. Система предложит ввести новый пароль. Перед установкой Firebird нужно установить демон inetd. Без него получить доступ к базе данных не получится. Вводим в командной строке:

sudo apt-get install -y openbsd-inetd

Теперь устанавливаем Firebird:

sudo apt-get install -y firebird2.5-classic

В процессе установки нужно будет задать пароль администратора SYSDBA. Конфигурируем Firebird:

dpkg-reconfigure firebird2.5-classic

Запустится программа настройки Firebird. Появится вопрос «Enable Firebird server?» (Включить сервер Firebird?). Ответьте утвердительно. Затем нужно заново задать пароль администратора SYSDBA. Если пароль отличается от стандартного (masterke), то при подключении DataExpress к базе нужно будет ввести этот пароль.

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

Отредактируем файл inetd.conf:

nano /etc/inetd.conf

Находим строчку (должна быть в конце):

localhost:gds_db stream tcp ...

И меняем «localhost» на «0.0.0.0». Выходим из редактора по Ctrl-X. На вопрос сохранить изменения отвечаем утвердительно. Редактор предложит ввести имя сохраняемого файла. Оставим прежнее имя, просто нажав ENTER. Перезагружаем машину:

reboot

Базовая настройка Firebird готова. Теперь нам нужно как-то загрузить на сервер базу. Для этого можно воспользовать программой FileZilla. Но перед тем как настраивать FileZilla создадим пользователя с обычными правами:

adduser user

Будет создан новый пользователь «user» и домашняя папка «/home/user». Система попросит назначить пароль пользователю, а также задаст несколько простых вопросов: фамилия, имя, телефон и т. д. Назначим права доступа к папке пользователю «user»:

chmod 777 /home/user

Теперь пользователю доступны операции чтения/записи/выполнения в этой папке. Настроим новое соединение в FileZilla. Нажимаем кнопку «Новый сайт», вводим IP-адрес сервера, выбираем протокол SFTP, тип входа - нормальный, вводим имя пользователя, которого недавно создали, пароль и нажимаем кнопку «Соединиться». Если соединение будет успешным, то в панелях справа вы увидите домашний каталог пользователя. Слева отображаются папки и файлы локального компьютера. Найдите файл своей базы и перетащите его в домашний каталог пользователя - начнется загрузка файла на сервер.

После успешной загрузки базы вернемся к Putty. Мы по прежнему не получим доступа к базе пока не зададим необходимые права. При установке Firebird в системе был создан пользователь «firebird», сервер баз данных работает от его имени. Чтобы сервер БД смог получить доступ к нашему файлу базы, нужно назначить его владельцем этого файла.

chown firebird /home/user/DEMO_DB.FDB

Обратите внимание, что в Linux регистр имеет значение.

Все готово для того, чтобы мы могли подключиться к удаленной базе. Пробуем: Если при конфигурировании Firebird вы ввели не стандартный пароль, то нужно снять флажок «Пароль по умолчанию» и ввести соответствующий пароль.

Дополнительные меры безопасности

Если вы серьезно решили использовать VDS для доступа к базе, то не лишним будет принять некоторые меры безопасности. Начнем с того, что скроем реальное расположение базы, создав алиас. Находим на сервере файл aliases.conf и редактируем:

nano /etc/firebird/2.5/aliases.conf

Пишем в конце файла, например:

mydb=/home/user/mybase.fdb

Разработчики Firebird рекомендуют изменить стандартный порт 3050 на какой-либо другой при доступе к базе через Интернет. По идее порт должен быть прописан в файле /etc/firebird/2.5/firebird.conf, в строке «RemoteServicePort» (которая должна быть раскоментирована). Но какой-бы порт не был указан, связь с сервером по прежнему осуществляется через порт 3050. На самом деле нужно редактировать файл inetd.conf:

nano /etc/inetd.conf

Находим уже знакомую нам строчку «0.0.0.0:gds_db …» и меняем «gds_db» на нужный порт, например 3051. Сохраняем изменения.

Теперь настроим файрвол ufw. Вводим в командной строке последовательно:

ufw enable ufw allow 22 ufw allow 3051

Первая команда включает файрвол. По умолчанию файрвол ничего не пропускает. Вторая команда открывает порт 22 для удаленного управления сервером через программу Putty. Третья команда открывает порт 3051, который нам нужен для связи с сервером Firebird. Таким образом в системе открыто только два порта: 22 и 3051. Перезагружаем сервер. Пробуем подключиться. Порт указывается через слеш после IP-адреса сервера, вместо полного пути к базе прописан алиас.

Настройка резервного копирования

Давайте теперь настроим резервное копирование. Резервные копии будем хранить в папке backups. Каждая копия будет иметь префикс из даты и времени. Создаем папку:

mkdir /home/user/backups

Резервное копирование выполняется утилитой gbak, входящей в состав Firebird. Чтобы было удобнее пользоваться командой резервного копирования, создадим небольшой скрипт:

nano /home/user/backup.sh

Сам скрипт:

#!/sbin/bash filename=`date +%y%m%d_%H%M%S_mybase` gbak -b -g /home/user/mybase.fdb /home/user/backups/$filename.fbk -v -y /home/user/backups/$filename.log -user SYSDBA -pass masterkey

В переменной filename хранится команда date, которая возвращает строку в формате ГодМесяцДень_ЧасМинСек_mybase. Утилита gbak выполняет резервное копирование (ключ -b), ключ -g запрещает сборку мусора. Это позволяет ускорить резервное копирование. Далее идут путь к файлу базы и путь к резервной копии. Ключ -v включает полное протоколирование процесса, а -y определяет, где будет создан лог.

Запустите скрипт и убедитесь, что резервная копия создается:

. /home/user/backup.sh ls /home/user/backups

Процесс резервного копирования можно автоматизировать планировщиком cron. Он будет запускать резервное копирование по расписанию. Добавим новое задание в планировщик.

nano /etc/crontab

Добавим в этот файл строчку:

0 12 * * * root . /home/user/backup.sh

Она обозначает запускать наш скрипт каждый день в 12:00. Сохраняем изменения. И на этом наша настройка заканчивается. Ну и пару строчек как можно восстановить базу из резервной копии:

mv /home/user/mybase.fdb /home/user/oldbase.fdb gbak -c /home/user/backups/mybase.fbk /home/user/mybase.fdb -user SYSDBA -pass masterkey

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

rm /home/user/oldbase.fdb

Настройка KeepAlive

В случае обрыва соединения информация о нем может по прежнему храниться в базе. Из-за этого некоторые пользователи не смогут войти в базу или изменить некоторые записи, т. к. они могут быть заблокированы. Мы можем настроить систему таким образом, чтобы наличие соединений проверялось системой с некоторой периодичностью. Это позволит Firebird закрывать оборванные соединения. Параметры KeepAlive устанавливаются в файле sysctl.conf:

nano /etc/sysctl.conf

Добавим в файл следующие строчки:

net.ipv4.tcp_keepalive_time = 60 net.ipv4.tcp_keepalive_intvl = 30 net.ipv4.tcp_keepalive_probes = 2

Первый параметр указывает системе начинать проверку соединения через 60 секунд. Если клиент не ответил, то повторить попытку через 30 секунд (второй параметр). Всего попыток 2 (третий параметр). После второй попытки система ждет еще 30 секунд (второй параметр) и закрывает соединение. Время закрытия соединения рассчитывается по формуле time + (probes + 1) * intvl. В нашем примере до закрытия соединения пройдет примерно: 60 + (2 + 1) * 30 = 150 секунд.

Оптимизация базы DataExpress

Скорость передачи данных в сети Интернет значительно ниже, чем в локальной сети. Если до этого вы работали с базой в локальной сети, а затем перешли в Интернет, то вы сразу заметите задержки.

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

  2. Старайтесь избегать интенсивного использования функций DB в выражениях и вычисляемых полях запросов.

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

  4. Чтение подчиненных данных формы (таблиц и запросов) тоже может сильно замедлять работу. В этом случае тоже имеет смысл создавать простую форма + запрос или использовать отчет.

Глава 2. GSEC - Утилита работы с базой данных безопасности

GSEC - это утилита для работы с базой данных безопасности (содержащей информацию о пользователях СУБД). Она позволяет системному администратору (или другому привилегированному пользователю) управлять учетными записями пользователей для различных баз данных СУБД Firebird. Используя различные опции, можно добавлять, изменять или удалять учетные записи пользователей из базы данных безопасности.

Замечание

Для некоторых операционных систем существует возможность запретить пользователям запуск GSEC, даже если им известен пароль пользователя SYSDBA. Системные администраторы таких систем могут с помощью установки прав файловой системы запретить выполнение некоторых утилит и программ для соблюдения требований безопасности.

Информация обо всех пользователях баз данных СУБД Firebird хранится в общей базе данных безопасности. Это обычная база данных СУБД Firebird, которая располагается на сервере, и называется security.fdb. Начиная с СУБД Firebird 2 она называется security2.fdb. По умолчанию этот файл располагается в директории:

  • C:\Program Files\Firebird\Firebird_x_x для ОС Windows (где x_x - версия Firebird, например 1_5).

  • /opt/firebird для ОС Linux и других Unix-систем.

В базе данных безопасности присутствуют две таблицы - users и host_info. Таблица host_info пустая, а таблица users хранит сведения о каждом пользователе, имеющем право доступа к любой базе данных СУБД Firebird. В СУБД Firebird 2 структура базы данных безопасности изменена, о чем будет сказано ниже. Необходимо также сказать, что для разграничения полномочий пользователей при работе с базами данных можно использовать роли и привилегии.

Утилита GSEC позволяет менять данные в таблице users базы данных безопасности. С ее помощью возможно добавление, изменение и удаление пользователей системы. Не все поля таблицы users могут быть показаны, хотя изменить можно любые из них. Например, столбец password (пароль) никогда не показывается утилитой GSEC, но вы его можете изменить.

Как и большинство утилит командной строки из поставки СУБД Firebird, GSEC может быть запущена как в интерактивном, так и в пакетном режиме, и может отображать подсказки с перечислением всех опций, о которых будет сказано ниже.

В этой главе описаны:

  • Опции командной строки GSEC.

  • Команды и параметры опций GSEC.

  • Выполнение GSEC в интерактивном и пакетном режиме, в любом из которых вы можете:

    • просматривать информацию о пользователях;

    • изменять информацию о пользователях;

    • добавлять новых пользователей;

    • удалять существующих пользователей.

  • Использование GSEC для управления удаленной базой данных безопасности.

  • Особенности работы с GSEC.

Крепление левой руки HOWTO.

Крепление левой руки HOWTO.

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

LHMK — молодой, но многообещающий сервисный продукт для малого и среднего бизнеса от варшавской компании Lefthand.


Его главное преимущество заключается в том, что ядро ​​базы данных основано на проекте Firebird с открытым исходным кодом и многоплатформенном характере (все это можно легко назвать «независимым от платформы»). С точки зрения оператора версии для Linux и Windows не отличаются в плане работы.Также сервер базы данных может быть размещен на любой *nix или windows машине. Работа в соответствии с любая схема:
  • сервер * nix-клиент * unix
  • сервер * nix клиент windows
  • Windows-сервер Windows-клиент
  • клиент сервера windows * unix
  • Сервер и клиент
  • на локальном хосте любой платформы
... то есть с технической точки зрения - сказка (правда, оцененная только админами и реализаторами).
Но не совсем к сожалению.
Firebird, как и любая серьезная база данных, предлагает управление пользователями с образцом для подражания. Пользователь SYSDBA (как и в MSSQL) имеет полные права и начальный пароль по умолчанию, который известен всем, кто устанавливал базу данных, и который меняют все, кто хочет использовать базу данных дома.
Пара: пользователь = SYSDBA + пароль = мастер-ключ , к сожалению у Левши есть хардкод в библиотеках и смена пароля мастер-ключ приводит к тому, что нет доступа к lh*базам.гдб.
Кроме того, если мы не можем изменить пароль для базовой учетной записи администратора - мы не можем выдать его в сети (т.е. порт 3050 должен быть отфильтрован). Это делает невозможным использование проекта в многоветвевой модели (и даже в локальной сети, если у нас есть пользователь, который может обращаться со сниффером, вызывать isql и выполнять команду drop).
Пока в Lefthand пользователь и пароль параметризуемы (в стиле user=lefthand+pass=наш_пароль), нужно использовать циклические решения:
  1. Запустите базу с Firebird на хосте, сидящем за воротами, ведущими к серверу ssh
  2. Разрешить подключения к 3050 только со шлюза
  3. Перенаправить клиент 3050 на хост Firebird с помощью ssh
Шаг за шагом:
  1. Хост с Firebird: iptables -A INPUT -i gateway_address -p tcp --dport 3050 -j ACCEPT + iptables -A INPUT -p tcp --dport 3050 -j DROP
  2. Клиентская станция: ssh -C -L 3050: firebird_address: 3050 gate_address + в настройках доступа к базе данных LHMK: localhost: lh.гдб

Пункт 2 в среде Windows делается тривиально с помощью PUTTY (дополнительно для этого сеанса можно кинуть ярлык на рабочий стол "Mrs. Ziucie" с надписью "Before you start Lefthand".

Что вам нужно помнить?
  • псевдоним lh.gdb на хосте с Firebird
  • с параметром -C для ssh или выбором "использовать сжатие" в PUTTY при выходе за пределы локалки (на DSL 512 вполне приличная производительность)
  • о запуске Firebird на выделенной учетной записи (установщик на линуксе сам создает пользователя firebird и дает соответствующие права в /opt - под виндой об этом надо помнить самому: instsvc -i -s -a -g -l firebird firebird_password )
  • про генерацию ключей и запуск с их помощью ssh туннеля ("госпожа Зюта" будет меркнуть, так как увидит в окне PUTTY приглашение на вход *nix и естественно будет забывать пароль каждые 3 дня)

После выполнения этих инструкций система работает без проблем.Если это не так, вернитесь к ее началу.

.

Установка Firebird SQL 1.5.x на сервер Ubuntu 9.10

Часто в приложениях использующих базу данных Firebird SQL , программисты рекомендуют использовать движок базы данных версии 1.5.x и что в более новых релизах Ubuntu у вас может возникнуть небольшая проблема с установкой этого движка из исходников, я решил описать как для установки последней версии Firebird SQL Server (на сегодняшний день в версии 1.5.6).
Качаем последний релиз Firebird SQL Server 1.5.x с сайта проекта http://www.firebirdsql.org/. Для установки мы будем использовать пакеты в виде файла .tar.gz (сжатый tarball), поэтому вам необходимо скачать соответствующие файлы для сервера `Classic` или `Superserver`. Различия между двумя версиями уже кратко и легко описаны здесь. Их действительно стоит прочитать, чтобы знать, что выбрать для себя 🙂

Все действия должны выполняться с привилегиями root

Скачав файл .tar.gz распаковать командой

tar -xzf имя файла.tar.gz

Каталог будет создан автоматически со всеми файлами, необходимыми для установки. Например, имея файл FirebirdSS-1.5.6.5026-0.i686.tar.gz , после распаковки получаем каталог с названием FirebirdSS-1.5.6.5026-0.i686 .

Для правильной установки нам также понадобится библиотека libstdc++5 . Для этого лучше всего скачать пакет в виде пакета .deb и установите его в системе. На сегодняшний день для скачивания доступен пакет libstdc++ 5_3.3.6-17ubuntu1_i386.deb . Вы можете легко найти этот пакет на http://packages.ubuntu.com (для Ubuntu Jaunty).

Загрузите и установите, выполнив команду

dpkg -i libstdc++ 5_3.3.6-17ubuntu1_i386.deb

Если все прошло успешно, переходим в директорию FirebirdSS-1.5.6.5026-0.i686 и выполняем команду

.C прерывается

Мы нажимаем «Ввод», и через некоторое время нас должны попросить ввести пароль для « суперпользователя », который является SYSDBA .

Запуск сервера Firebird: сервер успешно запущен

Пожалуйста, введите новый пароль для пользователя SYSDBA:

Обычно большинство программистов используют стандартный пароль `masterkey`, но любой может ввести любой 😉

После этого действия будет отображаться сообщение

Запуск ex для модификации /etc/init.д/жар-птица

Установка завершена

Сервер устанавливается в

по умолчанию.

/ опт / жар-птица /

Образец базы данных employee.fdb имеет номер и расположен по адресу

.

/ опт / жар-птица / примеры /

Запуск и остановка сервера Firebird в системах семейства Debian осуществляется командой:

/etc/init.d/firebird старт

/etc/init.d/firebird остановить

Чтобы убедиться, что наш сервер действительно работает, вы можете ввести команду

.

верх -b -n1 | grep фб

и получаем что-то вроде этого 😉

744 корень 20 0 3944 1480 1240 S 0.0 0.4 0:00.00 fbguard

745 корень 20 0 26 900 3044 2032 S 0.0 0.8 0: 00.02 fbserver

Вы также можете автоматизировать процесс запуска сервера Firebird с загруженной системой с помощью команды update-rc.d

А после боли 🙂

Добавить в избранное:

Нравится Загрузка...

Аналог

.

жар-птица | Блог Лазовски

Простое копирование может быть бесполезным для нас, если мы архивируем базу данных с ошибками. Исправление или копание в хорошей копии может занять у нас много времени, поэтому я решил написать простой скрипт, который будет проверять корректность базы данных и отправлять отчеты на почту (так же, как и в методе, описанном здесь -> https://lazowski.wordpress.com/2009/12.08/отправка-письма-с-терминала/).

#!/bin/bash
# Основные реквизиты для рассылки
[email protected]
[email protected]
логин = odogo
пароль = суперсекретный пароль
### для GMAIL сервер smtp.gmail.com:25
Serwersmtp = smtp.gmail.com: 25
title = `echo База из ABC `
data=`date -R`
echo> /var/log/FB.log
gfix -v /root/SYSTEM-1.S1B -user sysdba -password masterkey 2> /var/log/FB. log
вес = `du -h/root/SYSTEM-1.S1B`

dulog = `du -h /var/log/FB.log | cut -c1`
if [$dulog=0]
then
status = `echo OK`
else
status =` echo "Есть ошибки, обязательно проверьте базу!" `
fi
sendEmail -f $ from -t$do -u «$название» -a /var/log/FB.log -m "Отчет с $даты
База данных уже занимает $ вес
Статус базы данных $статус" -s $Serversmtp -xu $login -xp $ haslo

Скачать скрипт
Из-за того, что WordPress использует скрипты, его лучше скачать по ссылке выше.

Пояснения:
1. Для FireBird версии 2.0 и выше достаточно команды gfix . Для более старых версий нам нужно будет указать полный путь к этому файлу ( /usr/lib/firebird/1.5/bin/gfix ).
2. Расположение базы конечно необязательно, так же как и пароль для пользователя sysdba
3. Если база без ошибок, то получим пустой файл FB.log, иначе файл FB.log может иметь следующее содержание:

Сводка ошибок проверки
Количество ошибок страницы данных: 21
Количество ошибок страницы индекса: 12
Количество ошибок страницы базы данных: 11

.

Процедура восстановления поврежденной базы данных Firebird SQL

СЕРВИСНАЯ ЗАПИСКА

СТРАНИЦА 1

Копия 20 0 8 ПО ДВУХ ОБЕСПЕЧЕНИЙ

Процедура восстановления поврежденной базы данных SQL Firebird

Сервер базы данных Firebird SQL стабилен, и повреждение базы данных происходит очень редко. Как и в любой другой программе, база данных в любом случае может быть повреждена.В частности, это может произойти при внезапном отключении сервера, например, из-за внезапного отключения электроэнергии. Обычно самый надежный способ восстановить поврежденную базу данных — восстановить базу данных из последней резервной копии. Однако при восстановлении базы данных из резервной копии мы потеряем все изменения данных, сделанные после создания резервной копии базы данных. Поэтому можно попробовать восстановить поврежденную базу. Для этого выполните шаги, описанные ниже.В следующей процедуре используются программы GBAK и GFIX. S — это стандартные программы, устанавливаемые вместе с сервером Firebird. Эти программы находятся в папке bin сервера. При вызовах программ GBAK и GFIX, кроме описанных ниже параметров, необходимо указывать ID пользователя и пароль. Для этого необходимо дополнительно использовать

параметры: -пользователь SYSDBA -пароль мастер-ключ.

1. Сделайте копию файла базы данных

копии базы данных.fdb коррумпированная база.fdb

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

2. Проверка структуры базы данных

gfix -v -f defqbase.fdb

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

3. Резервное копирование в специальном режиме

gbak -b -v -ig -g поврежденная база.fdb копия.fbk

Эта команда создает резервную копию базы данных (опция -b) и отображает подробную информацию о процессе резервного копирования (опция -v).Ошибки контрольной суммы b 9000 3

будет игнорироваться в этой команде (параметр -ig), а процесс сборки мусора (параметр -g) будет отключен. Если есть возможность сделать копию данных таким способом, перейдите в раздел Восстановление БД из резервной копии. Если нет, перейдите к следующему шагу процедуры.

4. Класс

поврежденные фрагменты основания

gfix -m -f -i коррумпированная база.fdb

Информация. Команда gfix -m удаляет поврежденные фрагменты базы данных.После этого вернитесь к обычной операции backup/restore — (gbak -b, gbak -c).

5. Восстановить БД из резервной копии

gbak -c копия.fbk newbase.fdb


Поисковик

Аналогичные подстраницы:
Восстановление поврежденной базы данных FireBird
SQL DATABASES (2)
Перезапись базы данных SQL
Процедура восстановления для тестирования жесткого диска
Восстановление системных повреждений M inn Восстановление поврежденных расширений
3 базы данных SQL часть 1 лекция
загрузки - данные баз данных, базы данных SQL
3 Базы данных SQL часть 2 лекция
Восстановление поврежденных секторов на жестком диске
3 Базы данных SQL часть 2 лекция
10 Восстановление поврежденных частей Неизвестно (2)
Базы данных sql id 81694 Неизвестно Базы данных SQL Теория и практика bdsql
скачать для экзамена (1), Информатика и эконометрика SGGW, Семестр 4, Базы данных SQL, ЭКЗАМЕН
как восстановить поврежденную партию, Школа + док.текст (различный)
БАЗЫ ДАННЫХ 2 SQL 3 2-я часть
Язык баз данных SQL Запросы Процедурное программирование 2 id

больше похожих подстраниц

.

Смотрите также

Только новые статьи

Введите свой e-mail

Видео-курс

Blender для новичков

Ваше имя:Ваш E-Mail: