登录oracle
D:\>sqlplus /nolog
Dba 用户链接数据库:
SQL> connect /as sysdba
查看本地oracle 数据文件存放位置:
SQL> select name from v$datafile;
查看oracle 版本:
SQL> select * from v$version;
查看oracl 版本,实例名,和是否启动
SQL> select version, instance_name ,status from v$instance;
创建表空间tbs_hdht 最简单的语句: (不需要等号 )
SQL> create tablespace tbs_hdht datafile 'f:\oracle\product\10.2.0\tbs_hdht.dbf'
size 300M ;
创建hdht 用户最简单的语句:
SQL> create user hdht identified by pw123456 default tablespace tbs_hdht;
查看所有用户和用户可以的default 表空间。
SQL> select userName,default_tablespace from dba_users ;
最精简授权:创建,删除和链接。
SQL> grant create any table,drop any table,connect to hdht;
Grant dba to hdht; //dba 权限授权。
plsql本地登录远程数据库:
SQL> connect qwgl/pw123456@172.16.17.7/orcl
二plsql查看数据库 tnsnames.ora 文件步骤:
1 登录 sqlplus : D:\>sqlplus /nolog
2 使用 dba 用户登录: SQL> connect /as sysdba;
3 查看 oracle 数据库文件目录: SQL> select name from v$datafile;
返回:
NAME
-----------------------------------------------------
F:\ORACLE\PRODUCT\10.2.0\ ORADATA\ORCL\SYSTEM01.DBF
F:\ORACLE\PRODUCT\10.2.0 \ORADATA\ORCL\UNDOTBS01.DBF
F:\ORACLE\PRODUCT\10.2.0 \ORADATA\ORCL\SYSAUX01.DBF
F:\ORACLE\PRODUCT\10.2.0 \ORADATA\ORCL\USERS01.DBF
F:\ORACLE\PRODUCT\10.2.0 \ORADATA\ORCL\EXAMPLE01.DBF
F:\ORACLE\PRODUCT\10.2.0 \TBS_HDHT.DBF
已选择 6 行。
4 拷贝 oradata 以前的路径信息 path ;(下划线部分)
5 新开一个 cmd 窗口 ( 当前已经连接 dba 的留着,或许可以再用到 )
6 进入 path D:\>cd F:\ORACLE\PRODUCT\10.2.0\
7 查看实例目录: F:\oracle\product\10.2.0>dir
返回:
F:\oracle\product\10.2.0 的目录
2010-12-16 14:05 <DIR> .
2010-12-16 14:05 <DIR> ..
2010-12-16 14:05 <DIR> db_1
2010-12-16 14:11 <DIR> admin
2010-12-16 14:11 <DIR> flash_recovery_area
2010-12-16 14:11 <DIR> oradata
8 进入指定的 network/admin 目录: F:\oracle\product\10.2.0>cd db_1/network/admin
9 dir 查看目录文件,然后打开 tnsnames.ora 文件:
F:\oracle\product\10.2.0\db_1\NETWORK\ADMIN>type tnsnames.ora
或者 copy tnsnames.ora d:a.txt ( 会复制一份到 d 盘创建一个 a.txt 文件中 )
导出数据:不需要登录
D>exp db_qb/pw123456 @ 10.8.2 .190 :1521 / orcl file=E:\shiju_20100409.dmp
导入数据库:需要登录。(可以不加引号)
SQL> $imp hdht/pw123456 @ localhost :1521/ orcl file ='hd.dmp' fromuser ="user_demo"
touser ="hdht";
( 导入的时候可能会提示不是 "user_demo" 到处的,而是 "xxx" 到处的,重新改写导入语句,把 fromuser='user_demo' 改成 fromuser='XXX'' 即可 ')
. 执行一个SQL 脚本文件
SQL>start d:a.sql
3. 重新运行上一次运行的sql 语句
SQL>/
4. 将显示的内容输出到指定文件
SQL> SPOOL d:a.txt
在屏幕上的所有内容都包含在该文件中,包括你输入的sql 语句。
5. 关闭spool 输出
SQL> SPOOL OFF
只有关闭spool 输出,才会在输出文件中看到输出的内容。
6 .显示一个表的结构
SQL> desc table_name
1) . 显示当前环境变量的值:
SQL> Show all
-- 可以查看数据库版本数字标识,用户名等。
4) . 显示数据库的版本:
SQL> show rel;
release 1002000100
5) . 显示SGA 的大小
SQL> show SGA
Total System Global Area 612368384 bytes // 分配总的空间
Fixed Size 1250428 bytes // 已经使用空间大小
Variable Size 243272580 bytes // 可用空间大小
Database Buffers 360710144 bytes // 数据缓存空间大小
Redo Buffers 7135232 bytes // 重做缓冲区大小
-------- 除以1024*1024 后得到MB )
6). 显示当前的用户名
SQL> show user
USER 为 "HDHT"
查看表的注释( Dba_Tab_Comments 为数据库表对象注释说明表 )
SELECT * FROM Dba_Tab_Comments t where t.owner ='QWGL' and t.table_name like '%TB_%'
查看user 表的说明:(表明必须是大写)
select comments from dba_tab_comments t where t.table_name='TB_UIM_USER';
查看某个表的各个列的注释说明( Dba_Col_Comments 为数据库列对象说明表)
SELECT * FROM Dba_Col_Comments s where s.owner='QWGL' and s.table_name ='TB_UIM_USER'
查看指定明明空间下的所有表对象。
select * from user_tables ts where ts.tablespace_name ='TBS_QWGL'
经验小结:涉及到视图的导入到处最好使用命令行导入(plsql不能导出视图),其实,尽可能所有的导入导出操作都是用命令行操作。