oracle 常用命令

1.监听
启动监听
lsnrctl start
停止监听
lsnrctl stop
查看监听状态
lsnrctl status

2.启动
用oracle用户进入
su - oracle
运行sqlplus命令,进入sqlplus环境,nolog参数表示不登录;
sqlplus /nolog
以管理员模式进入
conn /as sysdba
启动数据库
startup;
停止数据库
SHUTDOWN IMMEDIATE
查看数据库服务名
先连接数据库: sqlplus / as sysdba;
select instance_name from v$instance;


远程连接数据库
sqlplus /nolog
conn sys/sys@IP:1521/orainstance as sysdba

也可以直接运行:
dbstart //启动数据库脚本
dbshut //停止数据库脚本

参考:
STARTUP [FORCE][RESTRICT][NOMOUNT][MIGRATE][QUIET]
[PFILE=<file_name>]
[MOUNT [EXCLUSIVE] <database_name>x |
OPEN <READ {ONLY | WRITE [RECOVER]} | RECOVER>
<database_name>]

SHUTDOWN <NORMAL|ABORT | IMMEDIATE | TRANSACTIONAL[LOCAL]>

3.用户管理
创建用户
create user "username" identified by "userpassword" ;
注:后面可带表空间
删除用户
drop user “username” cascade;
注:cascade 参数是级联删除该用户所有对象,经常遇到如用户有对象而未加此参数则用户删不了的问题,所以习惯性的加此参数
授权
grant connect,resource,dba to "username" ;
查看当前用户的角色
select * from user_role_privs;
select * from session_privs;
查看当前用户的系统权限和表级权限
select * from user_sys_privs;
select * from user_tab_privs;
查询用户表
select username from dba_users;
修改用户口令
alter user "username" identified by "password";
显示当前用户
show user;


4.表及表空间
创建表空间
CREATE TABLESPACE data01 DATAFILE '/oracle/oradata/db/DATA01.dbf' SIZE 500M;
删除表空间
DROP TABLESPACE data01 INCLUDING CONTENTS AND DATAFILES;
修改表空间大小
alter database datafile '/path/NADDate05.dbf' resize 100M;
增加表空间
ALTER TABLESPACE NEWCCS ADD DATAFILE '/u03/oradata/newccs/newccs04.dbf' SIZE 4896M;
查询数据库文件
select * from dba_data_files;
查询当前存在的表空间
select * from v$tablespace;
表空间情况
select tablespace_name,sum(bytes)/1024/1024 from dba_data_files group by tablespace_name;
查询表空间剩余空间
select tablespace_name,sum(bytes)/1024/1024 from dba_free_space group by tablespace_name;
查看表结构
desc table;
修改连接数:要重启数据库
alter system set processes=1000 scope=spfile;
shutdown immediate;
startup;
查看用户当前连接数
select count(*) from sys.v_$session;


1. 查询oracle中所有用户信息
select * from dba_users;
2. 只查询用户和密码
select username,password from dba_users;搜索
3. 查询当前用户信息
select * from dba_ustats;
4. 查询用户可以访问的视图文本
select * from dba_varrays;
5. 查询数据库中所有视图的文本
select * from dba_views;
select distinct  tablespace_name from  SYS.DBA_FREE_SPACE  where tablespace_name like '%RB%';
select * from   dba_objects where  object_name='JDE900_F0005';
select  * from rbods.jde900_f0005;
select * from  rbodm.dim_company;
  查看当前用户的缺省表空间
  select username,default_tablespace from user_users
  查看当前用户的角色
  select * from user_role_privs
  查看当前用户的系统权限和表级权限
  select * from user_sys_privs
  select * from user_tab_privs
  查看用户下所有的表
  select * from user_tables
  显示用户信息(所属表空间)
  select default_tablespace,temporary_tablespace from dba_users
  显示当前会话所具有的权限
  select * from session_privs
  显示指定用户所具有的系统权限
  select * from dba_sys_privs
  显示特权用户
  select * from v$pwfile_users
  查看名称包含log字符的表
  select object_name,object_id from user_objects where instr(object_name,'log')>0
  查看某表的创建时间
  select object_name,created from user_objects where object_name='ZW_YINGYEZ'
  查看某表的大小
  select sum(bytes)/(1024*1024) tablesize from user_segments
  where segment_name='ZW_YINGYEZ'
  查看放在ORACLE的内存区里的表
  select table_name,cache from user_tables where instr(cache,'Y')>0
  查看索引个数和类别
  select index_name,index_type,table_name from user_indexes order by table_name
  查看索引被索引的字段
  select * from user_ind_columns where table_name='CB_CHAOBIAOSJ201004'
  查看索引的大小
  select sum(bytes)/(1024*1024) as indexsize from user_segments
  where segment_name=upper('AS_MENUINFO')
  查看视图信息
  select * from user_views
  查看同义词的名称
  select * from user_synonyms
  查看函数和过程的状态
  select object_name,status from user_objects where object_type='FUNCTION'
  select object_name,status from user_objects where object_type='PROCEDURE'
  查看函数和过程的源代码
  select text from all_source where owner=user and name='SF_SPLIT_STRING'
  查看表字段
  select cname from col where tname='ZW_YINGYEZ'
  select column_name from user_tab_columns where table_name='ZW_YINGYEZ'
查看oracle版本命令:
    select * from v$version

人生的成功不在于拿到一副好牌,而是怎样将坏牌打好。
原文地址:https://www.cnblogs.com/bin521/p/6387006.html