千家信息网

oracle 常用相关sql 语句

发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,一、oracle 常用相关sql 语句1. 连接数据库su - oracle -c " sqlsplus 用户/密码 注:首次登陆用 sqlplus / as sysdba注: 关闭数据库:注:shu
千家信息网最后更新 2025年01月20日oracle 常用相关sql 语句

一、oracle 常用相关sql 语句

1. 连接数据库
su - oracle -c " sqlsplus 用户/密码 注:首次登陆用 sqlplus / as sysdba

注: 关闭数据库:注:shutdown可加关闭选项,从最温和到最粗暴的行为选项为(shutdown、shutdown transactional、shutdown immediate、shutdown abort)
shutdown:关闭,等待每个用户退出系统戓被取消后退出关闭数据库。
shutdown transactional:事务性关闭,等待每个用户提交戓回退当前的事务,然oracle取消对话,在所有用户退出系统后执行关闭。
shutdown immediate:直接关闭,取消所有用户对话(促使回退),执行正常的关闭程序。
关闭数据库后,需关闭监听,lsnrctl stop

2. 查看当前用户

show user;

3. 创建表空间
create tablespace 表名 datafile '/db/oracle11g/oradata/表名/表名01.dbf' size 500m autoextend on next 500m
maxsize 31g logging online permanent extent management local;

4. 添加表空间
ALTER TABLESPACE 表空间名 ADD DATAFILE '/db/oracle11g/oradata/表名/表名02.dbf' SIZE 500m AUTOEXTEND ON NEXT 500m
MAXSIZE 31g;

5. 创建用户
create user 用户名 identified by 密码 default tablespace 表空间名 temporary tablespace temp;

6. 分配权限

grant 权限 to 用户;

7. 重设密码
alter user 用户 identified by 密码;

8. 查看当前用户的表空间的数据文件

select * from v$datafile

9. 查看表所在的表空间对应的数据文件

select t1.name from v$tablespace t1,v$datafile t2 where t1.ts=value

10. 查看当前用户的表空间名

select * from v$tablespace;

11. 查看某个用户具有什么角色?

select * from dba_role_privs where grantee='SYS'

12. 知道表空间,显示该表空间包括的所有表;
select * from all_tables where tablespace_name='表空间名'

13. 知道表名,显示该表所属的表空间
select tablespace_name,table_name from user_tables where table_name='表名'

14. 重命名表空间
在表空间为ONLINE的情况下
ALTER TABLESPACE tablespace_name RENAME TO new_tablespace_name ;

15. 删除表空间

DROP TABLESPACE tablespace_name INCLUDING CONTENTS AND DATAFILES

16. 查看表空间

SELECT t.tablespace_name, round(SUM(bytes / (1024 * 1024)), 0) ts_size
FROM dba_tablespaces t, dba_data_files d
WHERE t.tablespace_name = d.tablespace_name
GROUP BY t.tablespace_name;

17. 查看控制文件

SELECT NAME FROM v$controlfile;

18. 查看日志文件

SELECT MEMBER FROM v$logfile;

19. 查看数据库的创建日期和方式

SELECT created, log_mode, log_mode FROM v$database;

20. 查看当前连接数据库的主机数:

col machine for a20
set linesize 150
select distinct machine,username from v$session order by username,machine;

21. 查询用户会话

select username,serial#,sid from v$session;
alter system kill session 'serial#,sid'; -- 删除相关用户会话

22. 查询 oracle 的连接数

select count(*) from v$session

23. 查询oracle 的并发连接数

select count(*)from v$session where status='ACTIVE';

24. 查看oracle 的版本

select banner from sys.v_$version;

0