今天看了一下oracle的管理手册,小结一下。
一:oracle大致分为管理和使用,都可以用sql来进行。
二:数据字典就是个系统目录,里面记录个各种信息。
三:oracle要想使用必须的有个实例。我想实例之所以可以分开安装,是因为它在有些情况下可以安装多个实例(并行服务器)
四: 从物理概念上来讲有这些物理文件:控制文件/日志文件(归档/在线2种)/数据文件/密码文件/初始化文件(pfile/spfile)/
从逻辑概念上来讲有:数据库》表空间》段》区间》块
五:1.对一般如果有多个应用程序用Oracle的数据库,一般只需要建立一个数据库就可以了,对不同的应用设立不同的用户(不同的表空间)就可以了。
2.如果多个应用程序的字符集不一样,如既有BIG5又有GB2312,那一般就需要考虑配置多个服务器,或者建立多个数据库,或者转换到UTF-8之类的字符集。
查看实例名
select * from v$instance;
这个地址不错 http://dev.csdn.net/develop/article/50/50000.shtm
这个也不错 http://database.ctocio.com.cn/tips/275/7600275.shtml
大致明白了,oracle安装并创建实例,会自动创建数据库,接下来的工作就是在这个数据库下建用户和表空间了。
创建了个临时表空间
create temporary tablespace GE_TEMP tempfile '/usr/u01/app/oracle/space/GE_TEMP01.dbf' size 100m autoextend on next 100m maxsize 2048m extent management local;
其中 extent management local 据说是本地管理,另外一种是字典管理。这里有些说明,有时间再看。
创建表空间
create tablespace GE logging datafile '/usr/u01/app/oracle/space/GE.dbf' size 5000m autoextend on next 1000m maxsize 20000m extent management local;
创建用户到刚创建的表空间上
create user username identified by password default tablespace GE temporary tablespace GE_TEMP;
给用户些权限
grant connect,resource to username
一切顺利。
配置tomcat数据源的几种方式。http://hbszyandong.iteye.com/blog/146268
又出问题,当用java连接oracle的时候,报错
ORA-12505: TNS:listener does not currently know of SID given in connect descriptor
修改了 ORACLE_HOME/network/admin/listener.ora成
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /usr/u01/app/oracle/product/10.2.0/db_1)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = orcl)
(ORACLE_HOME = /usr/u01/app/oracle/product/10.2.0/db_1)
(SID_NAME = orcl)
)
)
重新启动监听,可以了。