数据库连接数
select count(*) from v$process; --当前的连接数
select count(*) from v$session where status='ACTIVE';--查询oracle的并发连接数
select value from v$parameter where name = 'processes'; --数据库允许的最大连接数
select username,count(username) from v$session where username is not null group by username; --查看不同用户的连接数
select * from v$session where username is not null --查看用户连接详细
--查看当前有哪些用户正在使用数据
SELECT osuser, a.username,cpu_time/executions/1000000||'s', sql_fulltext,machine
from v$session a, v$sqlarea b
where a.sql_address =b.address order by cpu_time/executions desc;
表空间管理
--查看表空间物理文件的名称及大小
SELECT tablespace_name, file_id, file_name, status,round(bytes / (1024 * 1024), 0) "total_space(MB)" FROM dba_data_files ORDER BY tablespace_name;
--表空间使用率 (不含临时表空间)
SELECT Upper(F.TABLESPACE_NAME) "Tablespace",
D.TOT_GROOTTE_MB "Tablespace Size(M)",
D.TOT_GROOTTE_MB - F.TOTAL_BYTES "Used space(M)",
To_char(Round(( D.TOT_GROOTTE_MB - F.TOTAL_BYTES ) / D.TOT_GROOTTE_MB * 100, 2), '990.99') || '%' "Percentage of used",
F.TOTAL_BYTES "Free space(M)",
F.MAX_BYTES "Max(M)" FROM (SELECT TABLESPACE_NAME, Round(Sum(BYTES) / ( 1024 * 1024 ), 2) TOTAL_BYTES, Round(Max(BYTES) / ( 1024 * 1024 ), 2) MAX_BYTES FROM SYS.DBA_FREE_SPACE GROUP BY TABLESPACE_NAME) F,
(SELECT DD.TABLESPACE_NAME, Round(Sum(DD.BYTES) / ( 1024 * 1024 ), 2) TOT_GROOTTE_MB FROM SYS.DBA_DATA_FILES DD GROUP BY DD.TABLESPACE_NAME) D WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME
ORDER BY 1
--查询指定表空间所有表
select table_name,owner from all_tables where TABLESPACE_NAME='tablespace' ;
--查询指定表空间的所有用户
select distinct s.owner from dba_segments s where s.tablespace_name ='tablespace';
-- 查看用户有哪些权限
select * from dba_role_privs where grantee='dbuser';
--查看owner对应的所有表
select table_name from all_tables where owner='dbuser';
--查询表对应的trigger_name
select trigger_name from all_triggers where table_name like '%tablename%';
--根据trigger_name查询出触发器详细信息
select text from all_source where type='TRIGGER' AND name='INSERT_SEQ_ID_tablename';
--使用有DBA权限的用户,创建表空间的SQL参数
SELECT TS.tablespace_name,DBMS_METADATA.GET_DDL('TABLESPACE', TS.tablespace_name) FROM DBA_TABLESPACES TS;
--查看指定概要文件(如default)的密码有效期设置
SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';
数据导入和导出
-- 导出指定的表,导出数据库中的TEST开头表
exp user/password@xe file=/usr/local/2020.dmp log=/usr/local/2020_exp.log tables=(TEST_%)
--导入数据
imp user/password@xe file=/usr/local/2020.dmp log=/usr/local/2020_imp.log full=y ignore=y