如何使用 os 身份验证将 Oracle 数据库导出为系统用户?
How to export Oracle database as system user with os authentication?
用户 oracle 配置了 os 身份验证并以 oracle 身份登录。
我正在尝试使用以下表达式进行完整的数据库导出:
exp 'system/as sysdba' file='full_exp.dmp' log='full_exp.log' consistent='y'
但出现错误:
LRM-00108: Invalid positional parameter value 'sysdba'
也试过:
exp 'system' file='full_exp.dmp' log='full_exp.log' consistent='y'
要求输入系统密码,空密码不起作用,抛出错误 EXP-00004, EXP-00056 and ORA-01017
。
请指导我通过 os 认证用户进行完整的数据库导出。
完全导出 "as sysdba" 是个坏主意 - 存在重大安全风险(而且 "system" 默认情况下没有 sysdba 权限)。您最好只定义一个具有 exp_full_database and/or datapump_exp_full_database 权限的用户,使用 OS 身份验证或使用 Oracle Wallet 来保存凭据,并使用该帐户 运行完整导出。
create user export_user identified by [password];
grant create session, exp_full_database, datapump_exp_full_database to export_user;
我的博客上有一个关于如何 set up an Oracle Wallet 凭据的参考。那么您的 expdp 或 exp 命令将如下所示:
exp export_user file='full_exp.dmp' ...
或
expdp export_user directory=export_dir ...
最后 - 认真考虑使用 Datapump (expdp) 而不是老派的 "export" 实用程序 (exp)。较新版本的 Oracle 包括不支持导出的对象类型,而 Datapump 通常更快,在选项方面更灵活。
要对非SYSDBA连接使用Oracle OS认证,只需连接映射到Oracle账户的OS账户,并使用/
作为user/password:
sqlplus /
expdp / ...
查看 Unix 和 Windows 的详细信息
https://oracle-base.com/articles/misc/os-authentication
用户 oracle 配置了 os 身份验证并以 oracle 身份登录。
我正在尝试使用以下表达式进行完整的数据库导出:
exp 'system/as sysdba' file='full_exp.dmp' log='full_exp.log' consistent='y'
但出现错误:
LRM-00108: Invalid positional parameter value 'sysdba'
也试过:
exp 'system' file='full_exp.dmp' log='full_exp.log' consistent='y'
要求输入系统密码,空密码不起作用,抛出错误 EXP-00004, EXP-00056 and ORA-01017
。
请指导我通过 os 认证用户进行完整的数据库导出。
完全导出 "as sysdba" 是个坏主意 - 存在重大安全风险(而且 "system" 默认情况下没有 sysdba 权限)。您最好只定义一个具有 exp_full_database and/or datapump_exp_full_database 权限的用户,使用 OS 身份验证或使用 Oracle Wallet 来保存凭据,并使用该帐户 运行完整导出。
create user export_user identified by [password];
grant create session, exp_full_database, datapump_exp_full_database to export_user;
我的博客上有一个关于如何 set up an Oracle Wallet 凭据的参考。那么您的 expdp 或 exp 命令将如下所示:
exp export_user file='full_exp.dmp' ...
或
expdp export_user directory=export_dir ...
最后 - 认真考虑使用 Datapump (expdp) 而不是老派的 "export" 实用程序 (exp)。较新版本的 Oracle 包括不支持导出的对象类型,而 Datapump 通常更快,在选项方面更灵活。
要对非SYSDBA连接使用Oracle OS认证,只需连接映射到Oracle账户的OS账户,并使用/
作为user/password:
sqlplus /
expdp / ...
查看 Unix 和 Windows 的详细信息 https://oracle-base.com/articles/misc/os-authentication