Firebird数据库SYSDBA连接错误

2024-03-06

我刚刚安装了 Win64 版 Firebird,并且尝试连接到用 ISQL 预打包的员工数据库。按照Firebird官方的步骤进行操作快速入门指南 https://www.firebirdsql.org/file/documentation/html/en/firebirddocs/qsg3/firebird-3-quickstartguide.html,我打开 ISQL 实用程序并输入:

connect localhost:employee user sysdba password masterkey;

结果我得到:

语句失败,SQLSTATE = 28000
您的用户名和密码未定义。请您的数据库管理员设置 Firebird 登录。

最奇怪的是,如果我导航到员工数据库示例本身并从那里发出 isql 命令,我就可以成功连接。


不同之处在于,直接连接到数据库文件不需要密码,它甚至会忽略密码,而只使用提供的用户来知道要应用哪些权限。

如果没有主机名,ISQL 将默认使用 Firebird 嵌入模式,而不是服务器。要进行比较,请尝试使用isql employee.fdb (or isql employee),它只会使用您当前的操作系统用户名登录,而isql localhost:employee将失败并显示“您的用户名和密码未定义”。

看起来您指定的密码与 masterkey 的默认密码不同,或者不知何故 sysdba 帐户未初始化。我记得早期 Firebird 3 版本的安装程序存在问题,但我认为 3.0.2 不应受此影响(或者至少:它对我有用)。

如果 SYSDBA 帐户未初始化,请按照 Firebird 3 发行说明 部分的步骤操作初始化安全数据库 https://www.firebirdsql.org/file/documentation/release_notes/html/en/3_0/rnfb30-compat-initsec.html:

初始化步骤

初始化是在嵌入模式下使用isql公用事业。 对于嵌入式连接,不需要身份验证密码 如果您提供的话,将会被忽略。嵌入式连接将 无需登录凭据即可正常工作,并使用您的主机“登录” 如果省略用户名,则为凭据。然而,即使用户 名称不受身份验证、创建或修改任何内容的影响 在现有的安全数据库中要求用户是SYSDBA; 否则,isql将为 CREATE USER 抛出权限错误 要求。

SQL 用户管理命令适用于任何打开的数据库。 因为样本数据库employee.fdb存在于你的 安装并已别名databases.conf, 这很方便 将其用于用户管理任务。

  1. 停止 Firebird 服务器。 Firebird 3 主动缓存与安全数据库的连接。服务器连接的存在可能 防止isql从建立嵌入式连接。

  2. 在合适的 shell 中,启动isql交互式会话,通过别名打开员工数据库:

    > isql -user sysdba employee
    
  3. 创建SYSDBA用户:

    SQL> create user SYSDBA password 'SomethingCryptic';
    SQL> commit;
    SQL> quit;
    
  4. 要完成初始化,请再次启动 Firebird 服务器。现在您将能够对数据库执行网络登录, 包括安全数据库,使用您分配的密码 系统数据库管理员。

其中“SomethingCryptic”应该是您的密码。

如果创建了 SYSDBA 用户,如果您忘记了所设置的内容,则需要更改其密码。遵循相同的步骤,但在步骤 3 中执行以下操作:

SQL> alter user SYSDBA set password '<new password>';
SQL> commit;
SQL> quit;

如果出现错误“未找到用户的记录:SYSDBA”,确保您确实以 SYSDBA 身份连接,否则重试原始步骤 3。没有管理员访问权限将表现为用户不存在,因此如果用户确实不存在,或者如果您与非特权用户连接。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Firebird数据库SYSDBA连接错误 的相关文章

  • 用C++连接oracle数据库

    我正在寻找一种方法来连接到远程 Oracle 数据库并从 C 控制台应用程序中的表中读取一些数据 有人可以给我一些提示吗 谢谢 soci http soci sourceforge net http soci sourceforge net
  • Firebird数据库模式/数据差异工具

    RedGate http www red gate com为 Microsoft SQL Server 制作一个工具 允许您捕获两个数据库之间的差异 它生成更新数据库模式所需的脚本 同时保留数据 我需要为 Firebird 数据库找到这样的
  • 可以使用两个独立的 SQLite 数据库吗?

    我有一个 sqlite 数据库 其中存储用户定义的信息和用户只读的信息 我觉得将来可能需要修改只读信息 并且我不想进行整个数据迁移 有没有一种方法可以使用单独的 sqlite 数据库来存储只读信息 该数据库可以轻松替换 如果是这样 您能否就
  • 如何通过单个mysql查询更新多个表?

    我有两个表 tb1 和 tb2 我必须在用户级别更新两个表的公共列 我对两个表都有一个共同的标准 例如用户名 所以我想这样更新 UPDATE tb1 tb2 SET user level 1 WHERE username Mr X 但不知何
  • 我应该保留远程数据库的本地副本吗?

    我正在开发一个应用程序 基本上允许人们创建 加入和管理其他人的群组 群组内的人也可以互相发送消息 我一直在想哪条路会更好 保留包含所有信息的远程数据库 包括发送给用户和从用户发送的消息 并让应用程序在每次需要信息时查询服务器 甚至是它以前见
  • 通过分布式数据库聚合作业优化网络带宽

    我有一个分布式 联合数据库 结构如下 数据库分布在三个地理位置 节点 每个节点集群有多个数据库 关系数据库是 PostgreSQL MySQL Oracle 和 MS SQL Server 的混合体 非关系数据库是 MongoDB 或 Ca
  • 如何在可能为空值的字段上创建唯一索引(Oracle 11g)?

    这是包含 3 列的示例表 ID UNIQUE VALUE UNIQUE GROUP ID 我希望可以允许以下记录 1 NULL NULL 2 NULL NULL or 3 NULL 7 4 123 7 or 注意 此条件不允许unique
  • PHP 数据库显示在具有不同锚标记的相同字段中

    我四处寻找 看看这是否可行 但却空手而归 首先 这是我的代码 div style display none div ul li li li li li li ul
  • 使用 POJO 仅更新 JOOQ 记录中已更改的字段

    我想使用 POJO 作为源来更新 JOOQ 记录中已更改的字段 Record from Object http www jooq org javadoc 3 8 x org jooq Record html from java lang O
  • 未加载 Firebird 扩展

    我正在尝试在 PHP 中使用 Firebird 扩展 我有扩展文件 php pdo firebird dll php interbase dll in my ext文件夹 我将它们添加到我的php ini像这样文件 PHP PDO FIRE
  • 什么会导致 Oracle ROWID 更改?

    AFAIK Oracle 中的 ROWID 表示相应数据文件中记录的物理位置 在什么情况下记录的ROWID可能会改变 我所知道的一个是分区表上的更新 它将记录 移动 到另一个分区 还有其他情况吗 我们的大多数数据库都是 Oracle 10
  • 如何使用sql脚本更改列的属性

    如何使用 sql 脚本更改列的属性 这是我尝试过但出现错误的方法 ALTER TABLE dbo tblBiometricPattern COLUMN BiometricPatternID TINYINT NOT NULL IDENTITY
  • 每个数据库多个/单个 *.edmx 文件

    我有一个通过 ADO net 数据服务与数据库交互的项目 数据库很大 近 150 个具有依赖关系的表 该项目几年前开始 当时使用的是数据集 现在我们正在转向实体模型关系 由于我们添加了更多需要使用的表 该模型正在不断增长 这是管理这一切的正
  • 我应该定义索引(A)和索引(B),还是索引(A,B),或者两者都定义?

    在我的表中 我有两个密切相关的列 A 和 B 我应该考虑哪些因素来决定是否创建 索引 A 和索引 B 索引 A B 以上两者 如果我 仅使用类似的查询where A 5 and B 10 并且从不喜欢where A 5 也可以使用类似的查询
  • 为 java 项目创建安装

    我创建了一个 java 项目 它使用数据库来检索 编辑和保存数据 我使用 Netbeans 完成了该项目 现在我想在该项目之外创建一个安装 为此 我想包含与项目一起安装的数据库 我用来连接数据库的代码是 Class forName com
  • 如何将彼此“接近”的纬度/经度点分组?

    我有一个用户提交的纬度 经度点的数据库 并且正在尝试将 接近 点分组在一起 接近 是相对的 但目前看来约为 500 英尺 起初 我似乎只能按前 3 个小数位具有相同纬度 经度的行进行分组 大约是一个 300x300 的盒子 了解当您远离赤道
  • 如何使用 C# 查询远程 MS ACCESS .mdb 数据库

    我正在尝试使用 C 查询 mote MS ACCESS 数据库 mdb 文件 将文件复制到本地计算机时可以成功查询它 我只想远程放置文件 所以我的客户端程序不包含原始数据 static string m path http www xyz
  • 如何在文件系统中存储图像

    目前 我已将图像 最大 6MB 作为 BLOB 存储在 InnoDB 表中 随着数据大小的增长 夜间备份变得越来越慢 阻碍了正常性能 因此 二进制数据需要进入文件系统 指向文件的指针将保存在数据库中 数据具有树状关系 main site u
  • 自动删除主键序列中的间隙

    我正在创建一个网页 该网页根据用户操作将数据存储到 MySQL 数据库中 数据库有很多行 行的主键是列 rowID 它只是按顺序对行进行编号 例如 1 2 3 4 用户可以选择删除行 问题是当用户删除最后一行以外的行时 rowID 中有一个
  • Android:打开和关闭SQLite数据库

    我正在开发Android应用程序 我经常在其中访问本地数据库 该数据库可以从不同的主题访问 因此我遇到了数据库的协调问题 我使用以下open and close method public void open mDb mDbHelper g

随机推荐

  • 如何定位按钮精灵 css

    button1 background E68A00 url wooden jpg repeat x border 2px solid eee height 28px width 115px margin 50px 0 0 50px padd
  • Shell 脚本:获取 python: 命令未找到错误

    当我从 shell 脚本调用 Python 脚本时 它运行良好 python script py 但是当我从 Gerrit 中提取相同的脚本 然后添加调用 Python 脚本的代码后 它给了我以下错误 script sh line 126
  • php require_once 尝试仅在我的生产服务器上包含第二次

    我在各种包含文件的顶部都有这段代码 require once functions php 有时我需要包含几个包含文件来生成页面 并且在我的本地服务器上这工作正常 因为上面的代码告诉它只包含一次functions php 因此它不会尝试声明函
  • MS Entity Framework VS NHibernate 及其派生贡献(FluentNHibernate、Linq for NHibernate)

    我刚刚读过这个article http visualstudiomagazine com Articles 2009 12 01 Entity Sequel aspx Page 1关于实体框架 4 实际上是版本 2 实体框架 http ms
  • 将 for-each 循环替换为 lambda 表达式

    我只是重构一些旧项目以使用 Java 8 的功能 int counter 1 for Checker checker checkers if counter lt checkers size checker setNextChecker c
  • 不要使用 Xcode 8 复制 swift 库吗?

    How to not在 Xcode 8 中自动嵌入 Swift 动态库 我尝试过设置ALWAYS EMBED SWIFT STANDARD LIBRARIES为 否 无论如何默认为 否 但它仍然将 Swift 动态库复制到应用程序包中 我正
  • Require.js 延迟加载远程 url

    我的本地文件系统上有一个名为 moment js 的文件 并使用 require js 加载它 如下所示 initialize function require moment function data console log data 但
  • Java中杀死进程的正确方法

    在 Java 中终止进程的最佳方法是什么 获取 PID 然后用以下命令杀死它Runtime exec Use destroyForcibly 这两种方法有什么区别 还有其他解决方案吗 如果您要终止的进程已由您的应用程序启动 那么你可能已经参
  • Tapestry5 无法将视频流传输到 iPad

    我想通过后端带有 Tapestry5 5 3 5 的 HTML5 视频标签将视频流式传输到我的 iPad 通常 服务器端框架甚至不应该在其中发挥作用 但不知何故它确实发挥了作用 无论如何 希望这里有人能帮助我 请记住 我的项目很大程度上是一
  • Kafka 连接:提供了配置 XXX,但不是 AdminClientConfig 中的已知配置

    启动 Kafka Connect 时 我看到很多警告 10 33 56 706 DistributedHerder WARN org apache kafka clients admin AdminClientConfig The conf
  • 如何使用 AngularJS 创建可排序的手风琴?

    I found 用户界面可排序 https github com angular ui ui sortable并使其能够很好地处理简单的列表等 我的应用程序已经使用了ui引导程序 http angular ui github io boot
  • 使用 AirPrint 打印 PDF 会导致输出较小

    我尝试打印 pdfUIPrintInteractionController它加载在UIWevView 好消息是我可以打印 坏消息是打印输出太小 any help would be appreciated IBACTION printPDF
  • 如何将对象传递给 numpy 点函数

    假设我已经定义了我的对象 import numpy as np class myTensor def init self data self data np array data self parent 如何将 myTensor 作为输入传
  • Sphinx Pygments 词法分析器过滤器扩展?

    我有一种类似 Lisp 的语言 我想在 Sphinx 代码片段文档中强调使用 Pygments 我的方法是扩展现有的 CommonLispLexer 以使用 NameHighlightFilter 添加内置名称 但是 它不起作用 所以我一定
  • cordova - 失败:不支持 q

    当我构建 cordova 时 此消息视图 不支持使用 requireCordovaModule 加载非cordova模块 q 相反 将此模块添加到您的依赖项中并使用常规 require 来加载它 如何解决这个问题 附言 我在这个构建问题之前
  • Android SDK 管理器无法下载新文件

    我试图获取最新的 android 源代码 5 0 只是为了看看它看起来如何 但是当我尝试从 Android SDK 下载源代码时 它给了我一个错误 说local找不到网址 这是日志 Fetching https dl ssl google
  • 如何拉取已安装应用程序名称、包名称和可绘制图标的列表

    我试图弄清楚如何将此代码实现到我现有的源代码中 目前 我有一些源显示所有已安装应用程序的列表视图 单击将向应用程序发送意图 我需要一些关于如何拉出图标并将其添加到列表视图中的支持 任何帮助 源代码编辑 链接等都可以帮助我解决这个问题 谢谢
  • 使用node.js child_process调用python脚本

    我试图从我的节点文件调用 python 代码 这是我的node js代码 var util require util var spawn require child process spawn var process spawn pytho
  • 使用 nth-child 选择多个子元素

    div div p nth child 1 to 5 如何使用第 n 个子元素选择多个数字 这样我就可以获取子元素 1 到 5 而无需编写 div div p nth child 1 div div p nth child 2 div di
  • Firebird数据库SYSDBA连接错误

    我刚刚安装了 Win64 版 Firebird 并且尝试连接到用 ISQL 预打包的员工数据库 按照Firebird官方的步骤进行操作快速入门指南 https www firebirdsql org file documentation h