1、连接数据库: conn 用户名/密码@服务名(一般情况下与数据库名字相同)[as sysdba]
断开连接:disconn
2、启动数据库:1、startup(启动实例->加载数据库->打开数据库)
2、startup nomount(启动实例)
3、startup mount(启动实例->加载数据库)
关闭数据库:1、shutdown normal(不允许新的连接,等待会话结束(等待所有用户退出),等待事务结束,做一个检查点并关闭数据文件。启动时不需要实 例恢复)
2、shutdown transactional(不允许新的连接,不等待会话结束,等待事务结束,做一个检查点并关闭数据文件。启动时不需要实例恢复)
3、shutdown immediate(不允许新的连接,不等待会话结束,不等待事务结束,做一个检查点并关闭数据文件。没有结束的事务会自动 rollback。启动时不需要实例恢复)
4、shutdown abort(不允许新的连接,不等待会话结束,不等待事务结束,不做检查点并没有关闭数据文件。启动时自动进行实例恢复)
3、在startup mount 状态下,打开数据库:alter database open;
4、在数据库open状态下,查询用户表:select table_name from user_tables
查询所有表:select table_name from all_tables
查询dba表:select table_name from dba_tables
查询某个用户的表:select table_name from ***_tables where owner='用户名'(***为user、all、dba之一)
5、查询数据库文件名字和ID:select file_name,file_id from dba_data_files;
6、表空间操作:
1)删除操作:drop tablespace 名字 [ including contents and datafiles];(如果不加中括号中的语句,则不会删除表空间对应的数据文件)
2)创建操作:
(1)临时表空间:create temporary tablespace 名字
tempfile '绝对路径' size 50M
autoextend on next 20M maxsize 200M
extent management local;
(2)数据表空间:create tablespace 名字
logging
datafile '绝对路径' size 50M
autoextend on next 20M maxsize 200M
extent management local;
3)修改操作:
(1)关闭表空间的自动增长:alter database datafile 文件路径 autoextend off;
(2)打开表空间的自动增长:alter database datafile 文件路径 autoextend on;
(3)设置数据库默认表空间:alter database default tablespace 表空间名;
(4)设置用户的默认表空间:alter user 用户名 default tablespace 表空间名;
(5)查看用户默认表空间:select username,default_tablespace from dba_users where username='用户名'
(6)修改表空间名字:alter tablespace XXX rename to YYY;
(7)更改表空间的数据文件路径:
1、在线情况:alter tablespace tablespace_name offline;
host copy D:\oradata\数据文件 G:\oradata\数据文件;
alter tablespace 表空间名 rename datafile 'D:\oradata\数据文件' to 'G:\oradata\数据文件';
alter tablespace 表空间名 online;
2、不在线情况:startup mount;
host copy D:\oradata\数据文件 G:\oradata\数据文件;
alter tablespace 表空间名 rename datafile 'D:\oradata\数据文件' to 'G:\oradata\数据文件';
alter database open;
(8)更改数据文件的大小:alter database datafile '全路径的数据文件名称' resize ***M;
(9)添加数据文件:alter tablespace 表空间名 add datafile '全路径的数据文件名称' ***M [autoextend on];
(10)删除数据文件:alter tablespace 表空间名 drop datafile '全路径的数据文件名称';
(11)查看表空间剩余空间:select tablespace_name,sum(bytes/1024/1024)
from dba_free_space group by tablespace_name
(12)查看数据文件使用情况:select file# ,name,status,enabled,bytes/1024/1024 M from v$datafile;
select tablespace_name,file_name,user_bytes/1024/1024 M from dba_data_files;
7、查询表定义语句:select dbms_metadata.get_ddl('TABLE','表名','用户名') from dual;(表明和用户名区分大小写)
8、修改数据库表所在空间:alter table 表名 move tablespace 表空间名;