12c的PDB创建DIRECTORY要注意与PATH_PREFIX的关系(ORA-65254)
在创建PDB过程中如果使用了带PATH_PREFIX的参数,意味着在创建DIRECTORY目录时需要指定相对路径,而不能指定其它绝对路径。来自博客园AskScuti
11g整库作为一个PDB迁移至阿里云12c CDB的过程中,在连接PDB,创建DIRECTORY目录的时候报错:ORA-65254: invalid path specified for the directory
目录
1. 项目过程
2. 问题
3. 原因
4. 解决方案
1. 项目过程
11g整库已经通过数据泵方式完整导出,拷贝到阿里云平台对应目录;在12c数据库中通过PDB$SEED快速创建PDB(注意:语句中带了参数path_prefix='/u01/app/oracle/oradata/cdbdb/pdb11g/'),连接PDB后,创建相应DIRECTORY时,提示错误。
create pluggable database pdb11g admin user pdb11g identified by * path_prefix='/u01/app/oracle/oradata/cdbdb/pdb11g/' file_name_convert=('/u01/app/oracle/oradata/cdbdb/pdbseed/','/u01/app/oracle/oradata/cdbdb/pdb11g/')
2. 问题
[oracle@izj6cf6xxwhjlqnfh4cmnyz:/home/oracle]$sqlplus sys/oracle@pdb11g as sysdba SQL*Plus: Release 12.2.0.1.0 Production on Tue Jun 4 18:41:52 2019 Copyright (c) 1982, 2016, Oracle. All rights reserved. Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production SQL> show con_name CON_NAME
-------------------------
PDB11G
SQL> show user
USER is "SYS"
SQL> !ls /u01/app/oracle/
admin audit cfgtoollogs checkpoints diag oradata product pump SQL> create or replace directory pumpdir as '/u01/app/oracle/pump';
create or replace directory pumpdir as '/u01/app/oracle/pump'
*
ERROR at line 1:
ORA-65254: invalid path specified for the directory
路径及权限无误,却依然报错。
3. 原因
SQL> !oerr ora 65254
65254, 00000, "invalid path specified for the directory"
// *Cause: An absolute path was used in the CREATE DIRECTORY statement.
// Since the PDB has set the PATH_PREFIX property, only relative
// path is allowed for directories.
// *Action: Specify a relative path and reissue the statement.
//
因为在创建PDB的语句中指定了PATH_PREFIX子句,所以PATH_PREFIX指定的路径将作为前缀添加到该PDB的所有本地目录对象中,只能指定基于PATH_PREFIX的相对路径。
官方文档 Release 12.2 Database Administrator’s Guide:Example 38-5 PATH_PREFIX Clause
4. 解决方案
SQL> create or replace directory oracle_path_prefix as 'pump'; Directory created. SQL> select owner o,directory_name dn,directory_path dp,origin_con_id cid from dba_directories where directory_name='ORACLE_PATH_PREFIX'; O DN DP CID
---- ------------------ ----------------------------------------- ---
SYS ORACLE_PATH_PREFIX /u01/app/oracle/oradata/cdbdb/pdb11g/pump 4
定义好DIRECTORY_NAME之后,只需要在AS关键字后面定义目录名称即可,DIRECTORY_PATH会根据PDB中的PATH_PREFIX子句,自动生成。
12c的PDB创建DIRECTORY要注意与PATH_PREFIX的关系(ORA-65254)的更多相关文章
- 3.通过现有的PDB创建一个新的PDB
实验说明:创建PDB除了可以通过种子PDB创建外,现在测试通过一个现有的用户PDB克隆创建新的PDB数据库 实验步骤: 1.创建测试数据 SQL> alter session set conta ...
- 12C cdb/pdb 配置监听
. PDB is not an instance, so using SID in the connection string will not work. When the database is ...
- Oracle创建directory
Oracle创建directory 一般创建directory都是为了用数据泵导入/导出数据用,其实directory还有很多别的用处,本文不做阐述 1.新建directory的语法 CREA ...
- 022. ASP.NET为DataSet中数据集添加关系及动态创建主子表和添加主子表关系
protected void Page_Load(object sender, EventArgs e) { string connectionString = "server=.;data ...
- Oracle 12C -- 使用seed PDB创建新的pdb
$ sqlplus '/as sysdba' SQL*Plus: Release Production on Tue Jun :: Copyright (c) , , Oracle. All righ ...
- Oracle 12c在PDB中创建scott/tiger
scott/tiger一直以来是oracle数据的默认用户,但是跟之前的版本相比,Oracle 12c引入了PDB管理,所以要麻烦一些 下面假设管理员为SYS/Oracle12csys,在orcl实例 ...
- Oracle 12c CDB PDB 安装/配置/管理
Oracle安装参考:https://www.cnblogs.com/zhichaoma/p/9288739.html 对于CDB,启动和关闭与之前传统的方式一样,具体语法如下: STARTU ...
- 12C CLONE PDB and config service_listener
Clone PDB PtestDEV to Ptestuat in testuat 1) Clone PtestDEV to Ptestuat C:\Windows\system32> ...
- Oracle 12c CDB PDB
先说基本用法: 先按11G之前进行 conn / as sysdba; create user test identifed by test; ORA-65096: 公用用户名或角色名无效. 查官方文 ...
随机推荐
- [大数据技术]Kettle初次连接MySQL数据库 报错问题 错误连接数据库 Error occured while trying to connect to the database Exception while loading class org.gjt.mm.mysql.Driver
报错内容如下: 错误连接数据库 [foodmartconn] : org.pentaho.di.core.exception.KettleDatabaseException: Error occure ...
- 【笔记】机器学习 - 李宏毅 - 3 - Bias & Variance
A more complex model does not always lead to better performance on testing data. Because error due t ...
- 分享10个免费或便宜的Photoshop替代工具
说到编辑照片和图像文件,一般很多人都使用photoshop软件.然而,使用现在的最新版本Photoshop CC每月最低也要支付980日元,感觉使用门槛有点高的人应该不少吧. 有一篇文章,推荐了10个 ...
- 使用Python库paramiko登录远程设备
前言 手动下载paramiko库的安装包.在PyPi库中查找即可,但是不到是我的电脑问题还是网络问题,2.0.0以上版本我都安装不了,因此我自己是安装的paramiko 1.17.0版本,此版本经过测 ...
- JavaScript学习—基本类型—Number
在JavaScript中,采用IEEE754表示整数和浮点数 整数 十进制 let num10 = 10 八进制 let num8 = 0(1~7) JavaScript中,八进制数值以0作为前导,后 ...
- 获取现有Table中某些字段
//dtH System.Data.DataTable dttemp = new System.Data.DataTable(); DataView tempDv = dtH.DefaultView; ...
- C# interact with Command prompt
using System.IO; using System.Diagnostics; static void Main(string[] args) { CmdDemo("dir" ...
- mui下拉上拉(明一)
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name ...
- Spring-Cloud微服务踩坑
@feignclient和@requestmapping混用的时候出错 重写springmvc扫描controller时不带有@feignclient才实例化 @Configuration @Cond ...
- openlayers添加弹出框
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...