Oracle常用命令

2022-04-13  本文已影响0人  一介书生独醉江湖
# 切换oracle用户
su - oracle
# 启动监听
lsnrctl start
# 停止监听
lsnrctl stop
# 监听状态查询
lsnrctl status
# 启动oracle
sqlplus /nolog
conn / as sysdba
#Connected to an idle instance.
startup
或者
sqlplus sys as sysdba
# 关闭oracle
shutdown immediate
#不带参数的shutdown很长时间都没反应,可以用shutdown immediate
# 查看服务名称
SHOW PARAMETER service_names;
kill oracle 进程 或者关掉oracle
ps -ef|grep ora_dbw0_$ORACLE_SID
kill -9 pid
#查看实例名称(sid)
select instance_name from  V$instance;
# 查看当前连接用户缺省表空间
select username,default_tablespace from user_users;
#USERNAME  DEFAULT_TABLESPACE
#DS         TS_DS
# 关掉将被删除用户的客户端连接,否则删不掉;
# 以sysdba管理员登录,删除数据库(用户)
sqlplus sys as sysdba
drop user ds cascade;
# 删除表空间
drop tablespace ts_ds;
# 创建表空间
create tablespace tb_ds datafile '/home/sawl/tools/oracle11g/tablespace/ds_data.dbf' size 200M autoextend on;
# 为用户分配表空间
alter user ds default tablespace tb_ds;
# 为用户授权
grant create session,create table,create view,create sequence,unlimited tablespace,connect,resource,dba to ds;
# 创建用户
create user ds identified by 123456;
# 查看所有表列的备注
select distinct t.table_name,t.column_name,t.comments from user_col_comments t order by t.table_name
# 查看所有用户的表(当然,也包含登录用户的表)
select * from all_tables;

# 查看指定用户的表,用户名必须大写
select * from all_tables where owner='DS';

# 查看当前登录用户的表(下面两种等价)
select * from user_tables;
select * from tabs;

# 查询列属性
# 含表名   列名   备注
select * from user_col_comments t
# 含表名   列名   数据类型
select * from USER_TAB_COLUMNS t
# 查看某个字段重复的数据
select * from SYS_USER where XM in 
(select  XM  from  SYS_USER group by  XM having count (XM) > 1)
上一篇下一篇

猜你喜欢

热点阅读