Firebird ошибка «имя пользователя и пароль не определены» с приложением Delphi - PullRequest
17 голосов
/ 25 ноября 2010

У меня есть приложение, созданное с помощью Delphi 2006 и Firebird 2.5.Для подключения используйте компоненты Interbase от Delphi.Я настраиваю во время разработки базу данных TIBD с именем пользователя, паролем tc и работаю нормально, но когда я хочу запустить приложение на другом компьютере (сначала я устанавливаю на нем Firebird 2.5), я получил эту ошибку:

Statement failed, SQLSTATE = 28000

Ваше имя пользователя и пароль не определены.Попросите администратора базы данных настроить логин Firebird.

Что это?Как я могу решить это?

Ответы [ 4 ]

15 голосов
/ 25 ноября 2010

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

Я предлагаю вам с легкостью протестировать эту проблему, чтобы установить для свойства LoginPrompt значение true в компоненте TIBDatabase, чтобы он мог запрашивать у пользователя дополнительные учетные данные перед подключением. Вы сможете подключиться, используя любую действительную комбинацию имени пользователя и пароля для этого сервера. Чтобы убедиться, что комбинация верна, попробуйте подключиться с помощью инструмента командной строки isql, например, команды

c:\test>isql test.fdb -u sysdba -p masterkey

подключится к c: \ test \ test.fdb, используя имя пользователя и пароль по умолчанию. (корневой каталог firebird должен быть в переменной окружения пути, чтобы это работало)

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

В Windows пароль sysdba по умолчанию для Firebird: masterkey .

1 голос
/ 12 сентября 2018

Однажды я получил эту ошибку при попытке подключения к базе данных Firebird 3.0.3 с помощью клиентских библиотек Firebird 2.5Я просто забыл обновить клиентские библиотеки до 3.0.3.Может быть, это кому-нибудь поможет.

1 голос
/ 03 мая 2017

В 'isql-fb' из терминала linux и после 'CONNECT' в базе данных: - Я решил после удаления (отбрасывания) и заново создал пользователя 'SYSDBA'.

Наблюдение: У меня были проблемы с файломи разрешение папки в / tmp / firebird, и мне нужно было использовать sudo или root, чтобы открыть isql-fb

Спасибо.

0 голосов
/ 02 мая 2014

Эта ошибка связана с тем, что учетные данные для Firebird db просто не сохраняются в файле базы данных. Он хранится в файле конфигурации на сервере Firebird. Если вы копируете файл БД, а не пароль - у вас будет другой пароль.

На машинах с Ubuntu вы можете узнать пароль и имя пользователя в файле, /etc/firebird/<version>/SYSDBA.password

Это будет выглядеть примерно так,

ISC_USER=sysdba
ISC_PASSWORD="password"

Используйте эти учетные данные для подключения к файлу базы данных.

...