Oracle安装和使用
1.oracle安装
http://wenku.baidu.com/view/d01ffd43336c1eb91a375d68.html
2.命令行sqlplus连接oracle
(1)检查监听状态 C:\>lsnrctl status LSNRCTL for 32-bit Windows: Version 9.2.0.1.0 - Production on 28-6月 -2005 11:01:01 Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved. 正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oyez)(PORT=1521))) TNS-12541: TNS:无监听器 TNS-12560: TNS: 协议适配器错误 TNS-00511: 无监听器 32-bit Windows Error: 61: Unknown error 正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC0))) TNS-12541: TNS:无监听器 TNS-12560: TNS: 协议适配器错误 TNS-00511: 无监听器 32-bit Windows Error: 2: No such file or directory 出现上述信息,表示没有启动监听。 (2)启动监听 C:\>lsnrctl start LSNRCTL for 32-bit Windows: Version 9.2.0.1.0 - Production on 28-6月 -2005 11:01:36 Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved. 启动tnslsnr:请稍候... TNSLSNR for 32-bit Windows: Version 9.2.0.1.0 - Production 系统参数文件为F:\oracle\ora92\network\admin\listener.ora 写入F:\oracle\ora92\network\log\listener.log的日志信息 监听:(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oyez)(PORT=1521))) 监听:(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC0ipc))) 正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oyez)(PORT=1521))) LISTENER 的 STATUS ------------------------ 别名 LISTENER 版本 TNSLSNR for 32-bit Windows: Version 9.2.0.1.0 - Production 启动日期 28-6月 -2005 11:01:38 正常运行时间 0 天 0 小时 0 分 2 秒 跟踪级别 off 安全性 OFF SNMP OFF 监听器参数文件 F:\oracle\ora92\network\admin\listener.ora 监听器日志文件 F:\oracle\ora92\network\log\listener.log 监听端点概要... (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oyez)(PORT=1521))) (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC0ipc))) (3) 连接数据库 C:\>sqlplus \nolog SQL*Plus: Release 9.2.0.1.0 - Production on 星期二 6月 28 11:05:27 2005 Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. SQL> conn user/password@orcl as sysdba //user和password是你要脸的用名和密码,如sys/123456 ERROR: ORA-12500: TNS: 监听程序无法启动专用服务器进程 SQL>exit; 原因:本地数据库对应的服务没有打开,在服务中把oracleu对应的服务打开 (4) 连接数据库 E:\>sqlplus /nolog SQL*Plus: Release 9.2.0.1.0 - Production on 星期二 6月 28 11:17:53 2005 Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. SQL> conn user/password@oradb as sysdba 已连接。 SQL> 3.通过自带sql*plus连接oracle 用 SQL*Plus 连接数据库的时候,出现一个对话框,要求填入用户名、密码、主机字符串信息。前两者不用说,自己会填对的,但是这个主机字符串就不知道什么意思,通过查资料才明白,其实这里的这个字符串就是在安装oracle的时候自动生成,它是配置的数据库连接服务名,一般与你在安装时设置的全局数据库名一致,默认的是orcl,所以连接的时候,应该填写主机字符串为orcl as sysdba. 以sys为用户名,password为密码,sysdba为连接身份登录或连接到sql*plus,则输入用户名称:sys,口令:password,主机字符串:orcl as sysdba 主机字符串填写错误的话就会一直报错。
账户: 用户名:systeme 123456 用户名:sys 123456 用户名:scott 123456 用户名:admin 123456 用户名:momo 123456 用户管理: A.连接用户: conn 用户名/密码 [as sysdba/sysoper] B.普通用户: conn admin/123456 c.连接管理员:conn sys/123456 as sysdba ; //注意加入用户是sys时后面必须加 as sysdba conn system/123456 ; C.修改用户密码: alter user 用户名 identified by “新密码” ; 创建的新用户连接: conn momo/123456 as sysdba ; 创建新用户: create user 用户名 identified by “密码” ; D.给momo授管理员权限: SQL> conn system/123456 SQL> grant dba to momo ; E、删除用户:drop user user_name cascade; 3.退出管理 退出:exit ; quit ; 4.设置页和行: Set pagesize 300 ; Set linesize 300 ; 查看表结构:desc emp ; 查看表数据: A.scott用户登陆: select * from emp ; B.sys用户登陆: select * from scott.emp ; 锁定和解锁用户: alter user admin account lock ; admin用户登陆不了 alter user admin account unlock ; 查看用户登陆后默认数据库:show parameter db_name ; ------> orcl 查看本orcl数据库里所有的表:select table_name from all_tables; 查看本orcl实例里所有用户:select username from dba_users; select * from all_users 9.命令行登陆:cmd --->sqlplus 用户名/密码@标识符名 最好把标识符与数据库实例命名一致
10.用SQL*Plus 工具登陆是: Sys 123456 orcl as sysdba 默认是orcl,设置数据库实例set oracle_sid = sidname 默认字符串符:orcl as sysdba ----> 默认连接到orclz数据库 Oracle自带的SQL*Plus 工具主机字符串名详解: 用“select name from v$database;”的name就是主机字符串; 和其它网络应用一样,要通过网络连接服务器端,你需要指明:服务器地址,网络协议,端口号。另外由于ORACLE运行一台服务器多个数据库,因此还需指明数据库名称。如果每次连接都输入以上4项,太过繁琐,为简化操作,可以为常用的连接建立主机字符串,如:jlk = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(Host= 10.10.10.10)(Port = 1521)) (CONNECT_DATA = (SID = ORCL))当你连接数据库时可以,直接使用sqlplus user/password@jlk进行连接了,其中jlk即为主机字符串,它表明:以TCP协议,连接地址为10.10.10.10的服务器的1521端口,访问其中名为ORCL的数据库 通俗地说,主机字符串是ORACLE中用来表明客户端与服务器端连接的方式。它只是一个别名,其真正内容包含网络协议,ORACLE实例名等项目。如果要建立或修改一个主机字符串,可用SQL*NET EASY CONFIG程序。例如:新安装一个ORACLE,可按以下方式输入: 用户名:SYSTEM 密码:MANAGER 主机字符串:TCP-LOOPBACK
# File: D:\oracle\product\10.2.0\db_1\network\admin\tnsnames.ora ewf_momo = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = momo)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl) ) ) ewf_momo:连接标示符 就是你用SQL*plus工具要输入的字符串名:ewf_momo as sysdba,如果不输入,则会默认为该ewf_momo 进入sqlplus提示符,输入connect name/password@<连接标识符> HOST:Oracle服务器ip地址,默认本地电脑名momo=localhost PORT:端口 SERVICE_NAME:数据库实例名SID=orcl 11.测试与数据库服务器是否连接: Sqlplus system/123456@'(description=(address_list=(address=(proto=tcp)(host=192.168.208.120)(port=1521)))(connect_data=(service_name=orcl)))’
此处的IP后面的orcl是字符串标识符名是数据库服务名,而不是数据库实例名ORACLE_SID
数据库服务名与网络连接
从oracle8i开如的oracle网络组件,数据库与客户端的连接主机串使用数据库服务名。之前用的是ORACLE_SID,即数据库实例名。
12.数据库操作:
a.查看当前所连接的数据库的详细信息:select * from v$database; b.查询当前数据库名 方法一:select name from v$database; 方法二:show parameter db 方法三:查看参数文件。 c.查询当前数据库实例名 方法一:select instance_name from v$instance; 方法二:show parameter instance 方法三:在参数文件中查询。
数据库、数据库实例、数据库服务: http://wenda.tianya.cn/question/16ea53f00c42eaeb
13、导出数据库:
http://blog.csdn.net/chshe509/article/details/7802082
14.表操作:
select * from user_tables --查询当前用户所拥有的表 select * from dba_tables --拥有DBA权限用户能查询所有的表 select * from all_tables --查询当前用户能访问的表