欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

数据库的导入及导出

程序员文章站 2022-06-11 21:17:06
...

oracle使用expdp/impdp命令导入导出数据

导出数据库

1.使用cmd登陆数据库
sqlplus/ as sysdba 直接回车不用输入密码

2.创建存放数据库的地址(导入导出都需要创建)
create or replace directory databak as 'D:\temp;----路径必须存在

3.赋予用户读写权限
grant read,write on directory databak to pacs; --pacs为用户名

4.执行导出或者导入数据之前需要先退出数据库
输入 quit 回车退出数据库

5.用户全数据导出,导出地方就是创建的路径下面
expdp pacs/[email protected] directory=databak dumpfile=pacs.dmp
logfile=pacs.log schemas=pacs

6.如果已经创建好表空间就可以直接导入
impdp 用户名/密码@orcl directory=databak dumpfile=pacs.dmp logfile=pacs.log schemas=pacs

如果没有创建表空间,需要先创建表空间才能导入数据

1.创建对应的表空间
create tablespace test(表空间的名字)
datafile ‘D:\app\tangjia\oradata\orcl\test.dbf’ (此路径为oracle的某个路径下)
size 50m (初始大小)
autoextend on;(自动扩展)

2.创建一个自己的用户,创建格式如下:
CREATE USER username (用户名)
IDENTIFIED BY password(密码)
DEFAULT TABLESPACE test(上面创建的表空间)
TEMPORARY TABLESPACE temp;(临时表空间就写temp即可)

oracle数据库死锁解决
死锁查询

SELECT SESS.SID,
       SESS.SERIAL#,
       LO.ORACLE_USERNAME,
       LO.OS_USER_NAME,
       AO.OBJECT_NAME,
       LO.LOCKED_MODE,
       SESS.MACHINE
FROM V$LOCKED_OBJECT LO,
     DBA_OBJECTS AO,
     V$SESSION SESS
WHERE AO.OBJECT_ID = LO.OBJECT_ID AND LO.SESSION_ID = SESS.SID;

解决

ALTER SYSTEM KILL SESSION '对应SID,对应SERIAL';