Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
设置执行数据库文件管理语句(例如用于创建或删除数据库)所需的特权。
dbsrv16 -gu { all | none | DBA | utility_db } ...
DBA
所有操作系统和数据库服务器。
限制可执行以下数据库文件管理语句的用户:
ALTER DATABASE dbfile ALTER TRANSACTION LOG
CREATE DATABASE 语句
CREATE DECRYPTED DATABASE 语句
CREATE DECRYPTED FILE 语句
CREATE ENCRYPTED DATABASE 语句
CREATE ENCRYPTED FILE 语句
DROP DATABASE 语句
RESTORE DATABASE 语句。
如果指定 utility_db,则只能从实用程序运行这些语句。如果指定 DBA,则只能由具有 SERVER OPERATOR 系统特权的用户运行这些语句。如果未指定上述两项,则所有用户均无法执行这些语句。
要防止文件管理语句被使用,请使用 -gu 选项的 none 特权级别启动数据库服务器。以下命令启动一个数据库服务器并将其命名为 TestSrv。它装载 mytestdb.db 数据库,但禁止任何用户使用该服务器来创建或删除数据库或者执行任何其它文件管理语句,而不管用户是否具有资源创建权限或者能否装载实用程序数据库并连接到该数据库。
dbsrv16 -n TestSrv -gu none c:\mytestdb.db
要只允许知道实用程序数据库口令的用户执行文件管理语句,通过运行以下命令启动服务器。请参见-su 数据库服务器选项。
dbsrv16 -n TestSrv -su secret -gu utility_db
以下命令将 Interactive SQL 作为客户端应用程序启动,连接到名为 TestSrv 的服务器、装载实用程序数据库并连接到用户。
dbisql -c "UID=DBA;PWD=secret;DBN=utility_db;Host=host1;Server=TestSrv"
在成功执行上述命令之后,用户连接到该实用程序数据库,并能执行文件管理语句。