Oracle PL/SQL Developer v16的安装以及导出导入表数据

一、PLSQL的安装以及连接配置

PL/SQL Developer v16 下载地址:https://www.jb51.net/softs/820654.html

使用 PL/SQL 前需要安装 Oracleinstance client 或者直接安装一个 Oracle 数据库。地址如下:

我这里下载的是 Windows 版本的 Oracle Database 19c ,地址(注意需要登录Oracle官网下载):https://www.oracle.com/cn/database/technologies/oracle-database-software-downloads.html#license-lightbox

使用 PL/SQL Developer v16 连接远程 Oracle 数据库,首先配置本地的 tnsnames.ora 文件,如下:

bash 复制代码
# tnsnames.ora Network Configuration File: D:\WINDOWS.X64_193000_db_home\NETWORK\ADMIN\tnsnames.ora
# Generated by Oracle configuration tools.

LISTENER_ORCL =
  (ADDRESS = (PROTOCOL = TCP)(HOST = 0.0.0.0)(PORT = 1521))


ORACLR_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
    (CONNECT_DATA =
      (SID = CLRExtProc)
      (PRESENTATION = RO)
    )
  )

ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 0.0.0.0)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

ORCLPDB =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 0.0.0.0)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orclpdb)
    )
  )
  
DevServerORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.80.189.43)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

上述配置文件内容中的 DevServerORAL 为远程数据库的连接配置,重启本地的 OracleOraDB19Home1TNSListener ,如下:

重启监听服务后,在 PL/SQL 中登录,如下:

二、导入导出表数据

登录 plsql 后,点击 Tools >> Export Tables,导出一个 dpe 文件,该文件是表的数据文件,如下:

导出 dpe 文件后,需要导出表结构,点击 Tools >> Export User Objects,生成一个 sql 文件,如下:

因为我这里 dpe 导出的表数据是 C##RY_NET 这个表空间下的表,所以还需要创建表空间,如下:

sql 复制代码
-- Create the user 
create user C##RY_NET
  default tablespace USERS
  temporary tablespace TEMP
  profile DEFAULT
  password expire
  IDENTIFIED BY Afxm1234
  quota unlimited on users;
-- Grant/Revoke system privileges 
grant create session to C##RY_NET;
grant unlimited tablespace to C##RY_NET;

在需要导入表数据的数据中,需要执行上述 sql 语句以创建表空间,之后使用导出的 sql 脚本创建表结构,然后需要分配表空间配额和权限,如下:

sql 复制代码
-- 分配表空间配额及权限
SELECT tablespace_name FROM dba_tablespaces;
SELECT * FROM dba_ts_quotas WHERE tablespace_name = 'USERS';
ALTER USER SYSTEM QUOTA UNLIMITED ON USERS;
SELECT * FROM dba_sys_privs WHERE grantee = 'C##RY_NET';
SELECT * FROM dba_sys_privs WHERE grantee = 'SYSTEM';
GRANT CREATE SESSION TO C##RY_NET; 
GRANT UNLIMITED TABLESPACE TO C##RY_NET; 
GRANT SELECT, INSERT, UPDATE, DELETE ON C##RY_NET.DM_BED TO C##RY_NET; 

-- 创建链接数据库
CREATE DATABASE LINK dblink_yybip
CONNECT TO yybip
 IDENTIFIED BY Afxm2024 USING
  '(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.80.189.12)
  (PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORCL)))';
  
-- 查看所有的数据库链接
SELECT * FROM dba_db_links;

-- 查看当前用户的数据库链接
SELECT * FROM user_db_links;

-- 查询远程数据库中的数据
SELECT * FROM IUAP_APDOC_BASEDOC.BO_ORGADMIN@DBLINK_YYBIP;

最后,在需要导入表数据的服务器上使用 plsql ,点击 Tools >> Import Tables ,将 pde 文件中的表数据导入,如下:

相关推荐
点纭10 小时前
C 语言 第七章 常用函数(3)
c语言·开发语言·算法·oracle·c#
oradh1 天前
Oracle Undo问题总结(ORA-600 [4xxx] 系列错误)
数据库·oracle
达梦数据1 天前
DMDRS辅助表生成规则与作用
数据库·oracle
达梦数据1 天前
DMDRS空间数据类型说明:Oracle、DM8、MySQL空间数据类型映射
数据库·mysql·oracle
lusklusklusk1 天前
Oracle索引组织表,SQLServer聚集索引,Mysql Innodb表的数据行不是在磁盘上像排队一样严格连续地存放
mysql·postgresql·oracle·sqlserver
Lucifer三思而后行2 天前
Oracle SQL 优化实战:明明走了索引,SQL 还是慢?
sql·oracle
DarkAthena2 天前
【DuckDB】在DuckDB中查询ORACLE的数据的三种方式
oracle·duckdb
风123456789~2 天前
【Oracle专栏】更新多个表的统计信息
oracle
实心儿儿3 天前
MySQL — 库的操作
数据库·mysql·oracle
隔窗听雨眠3 天前
Oracle普通表自动改造分区表:从评估到自动化维护的完整实战指南
oracle