Oracle的常用命令和表空间

2022/2/23 19:24:02

本文主要是介绍Oracle的常用命令和表空间,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

删除用户和表空间

## 删除用户
drop user userName cascade;
## 如果用户无法删除,并报错:
## ERROR at line 1:
## ORA-01940: cannot drop a user that is currently connected
## 通过查看用户的进行,并kill用户进程,然后删除用户。
select sid,serial# from v$session where username='userName';
alter system kill session '150,9019';
## 删除表空间
drop tablespace nsName including contents and datafiles cascade constraints ;
##i ncluding contents 删除表空间中的内容,如果删除表空间之前表空间中有内容,而未加此参数,表空间删不掉,所以习惯性的加此参数。
## including datafiles 删除表空间中的数据文件。
## cascade constraints 同时删除 tablespace 中表的外键参照。

创建用户和表空间

## 创建表空间,并设置自增大小
create tablespace hyman_tablespace datafile 'G:\app\hyman\oradata\hyman_dev\hyman_dev.dbf' size 1000M autoextend on next 100M;
## 创建用户并指定默认表空间
create user hyman identified by 111111 default tablespace hyman_tablespace ;
## 为用户设置权限
grant dba to user;

用户表空间查看、修改大小、设置自增等

## 查看用户在哪个表空间下 
select username,default_tablespace from user_users;
## 查看该用户下的所有表
select * from user_tables;
## 查看所有表 名称、路径、是否自动增长
select tablespace_name,file_name,autoextensible from dba_data_files;
## 修改表空间自动增长属性
alter database datafile '表空间路径' autoextend on;
## 修改大小
alter database datafile '表空间路径' resize 2000m;

命令行导入导出dmp文件

## 导出
exp 用户名/密码@实例名 file=导出的dmp文件存放路径 log=导出日志存放路径
## 导入
imp 用户名/密码@实例名 file=导入的dmp文件路径 full=y

修改用户名(用户模式)

## 找出用户的序列号
select user#,name from user$ where name = '需要修改的用户名';
## 根据序列号修改信息
update user$ set name = '新用户名' where user# = 之前查的那个序列号;
## 修改后无法登录
commit;
### 尝试强制刷新
alter system checkpoint;
alter system flush shared_pool;


这篇关于Oracle的常用命令和表空间的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程