Oracle学习笔记
好几年以前用过一点Oracle,一直都用MS SQL了,很少接触这个,不过如果用起来和MS SQL差不多,为什么不自己学习一下呢?先下来那个Oracle 10g XE的免费版装上看看再说。下载地址:
http://www.oracle.com/technology/software/products/database/xe/index.html
安装第一步就要求输入密码,我知道MS SQL早已经集成了AD验证,所以直接用Windows集成验证就可以了,不推荐使用密码验证,不过Oracle还是第一步要输入一个密码。
200M的安装文件,却需要1.6G的空间。看来XE版本安装以后也不小啊,和MS SQL企业版所需要的空间差不多。
安装路径也比较不同默认直接在 C:\OracleEX\
默认管理员账户名叫 system 而不是MS SQL 的Adminitator
管理界面也有所不同,主界面是Web的,其他的几个关键功能是命令行的。:L当然,如果用习惯了就无所谓了,计算是用MS SQL,也可以直接用命令行解决问题,而不是使用图形界面,可是Oracle直接提供代替图形界面的命令行,给入门者增加了门槛。
另外,一个实例数据库也没有,什么功能都需要自己配,学习起来可真不方便啊!:funk: 200M的安装文件,却需要1.6G的空间。
----因为XE版的内建一个配置好的数据库,不过对数据最高容量有限制(好象是4G?)
安装第一步就要求输入密码,我知道MS SQL早已经集成了AD验证,所以直接用Windows集成验证就可以了,不推荐使用密码验证,不过Oracle还是第一步要输入一个密码。
--这是XE版的,企业版的Oracle有很多种验证机制
管理界面也有所不同,主界面是Web的,其他的几个关键功能是命令行的。
--想学Oracle还是得用命令行,很强大滴 ,想用GUI,可以考虑TORD,TORA, sqldeveloper之类,企业版ORACLE也可以使用内置GUI的管理工具
另外,一个实例数据库也没有
--数据库有的,而且XE版是不允许自建数据库实例的
论坛里有很多ORACLE DBA的,可以找大家来分享下
回复 #2 coredump 的帖子
是啊,移民过来的IT工程师占了绝大多数,可是论坛的学习气氛并不浓啊。:L 不会PL/SQL的不算会用oracle:mk_63
回复 #4 天下有山 的帖子
:funk:那我用SQL语句查询数据库没问题,这不算是PL/SQL么? 还有PL部分呢:mk_64 原来有一个示例数据库啊,还有一个样例用户 HR
按着示例,一步一步建立一个Application
Oracle的Application的概念,相当于一个WEB界面的GRUD应用。(这个在MS SQL中是需要利用VS编程实现的)
总体感觉因为XE版本没有像MS SQL Server一样的集成的管理界面,感觉一点也不直观,倒是和My SQL的界面差不多。
GUI界面的选择
http://www.ilovefreesoftware.com/22/articles/4-free-software-to-replace-toad-and-plsql-developer.html这里有一篇文章提到了4个免费的工具可以用来做开发。
TOAD 和 PL/SQL Developer 最流行,但是不是免费的。以下4个工具都是免费的,
[*]SQL Developer 专注于数据开发
[*]TORA数据开发和数据库管理
[*]DreamCoder 类似TORA,但是比TORA弱
[*]Free SQL Editor 类似 SQL Developer,但是比它弱,轻量级工具
这样看来我就还是看看TORA吧。值得一提的是TORA还是一个多平台工具,支持Linux,Windows和MAC OS X
[ 本帖最后由 xblues 于 3-5-2010 21:28 编辑 ]
看来Oracle还真够麻烦的
MS SQL 的概念是:机器名,数据服务实例名,数据库Oracle 的概念则有所不同:机器名,SID(这个直接就到数据库了,每个数据库都有一个SID名字,那么如果一个查询需要访问不同的数据库怎么办啊?:( )
下面的语句查看实例名和数据库名
To find the current value of ORACLE_SID:
SVRMGR> select instance from v$thread;
INSTANCE
----------------
DB_SID
To find the current value of DB_NAME:
SVRMGR> select name from v$database;
NAME
---------
DBNAME
看了一下,XE版本好像不能够修改实例名,数据库名也不能修改,都叫做 XE,那怎么用啊?!:L
回复 #9 xblues 的帖子
你应该装标准版,XE是阉割版,做做简单demo还凑合。用来学习各种概念,折腾数据库不合适
回复 #10 coredump 的帖子
标准版的盗版不好找。。。。。。。:L一会BT一下看看,感觉标准版好大啊。刚才好像理解错了。Oracle的SID的概念划分和MS SQL不一样。
MS SQL
机器名,数据库服务实例名,数据库。
Oracle
数据库,数据库实例名SID,这个是最上层的概念。
比如同一个数据库,可以用不同的SID安装在几台机器上,数据库名相同,SID名字不同。
MS SQL的数据库集群是建立在操作系统集群基础上的,
而Oracle的数据库集群是Oracle自己的技术,集成在数据库本身了。所以数据库是最大的概念。
有么有Oracle的高手,指点一点,看看我说的对不对。:handshake --标准版的下载地址
http://www.oracle.com/technology/software/products/database/oracle10g/htdocs/10201winsoft.html
回复 #12 zhengt 的帖子
:(这个是收费的吧,需要序列号的。 原帖由 xblues 于 3-5-2010 23:23 发表 http://cn.freeoz.org/bbs/images/common/back.gif标准版的盗版不好找。。。。。。。一会BT一下看看,感觉标准版好大啊。
刚才好像理解错了。Oracle的SID的概念划分和MS SQL不一样。
MS SQL
机器名,数据库服务实例名,数据库。
Oracle
数据库,数据库实例名SID,这个是最上层的概念。
比如同一个数据库,可以用不同的SID安装在几台机器上,数据库名相同,SID名字不同。
MS SQL的数据库集群是建立在操作系统集群基础上的,
而Oracle的数据库集群是Oracle自己的技术,集成在数据库本身了。所以数据库是最大的概念。
有么有Oracle的高手,指点一点,看看我说的对不对。
首先,ORACLE的管理工具最好的都是COMMAND LINE方式。一个合格的ORACLE DBA应该可以不使用任何图形界面操作数据库,包括安装ORACLE。设想一下,如果你给客户做技术支持,人家的数据库瘫痪了,你上门处理,然后告诉人家:对不起,要我处理问题可以,但是要在你们的生产数据库上面先装一个多大多大的图形界面工具,安装大概需要20分钟。。。##¥%。。¥……#·#·##!·#%…………——。你觉得客户会怎么样。我支持过有的银行的生产系统,他们的生产数据库安装任何软件要多个领导签字,还要先检查版权信息。。。。所以这个时候你要做的是使用SQL PLUS在最短的时间内把问题搞定。
2:ORACLE的db_name,SID,INSTANCE NAME,global name,呵呵,你要慢慢体会。一下很难说清楚。
回复 #13 xblues 的帖子
不收费的, 你只需要注册一个otn账号, 就可以下载安装,创建自己的数据库的. 虫子,你这样东一榔头西一棒槌的不行啊。没效率,而且不系统。
建议你找本书来学学吧。最好是Oracle认证的书,前面几课简单的又好懂,而且比较系统。 版内搜索一下"XX学习笔记"
全是有头没尾,三分钟热度的东西
回复 #16 西皮二黄 的帖子
随便了解一下皮毛就可以了,具体用的时候再具体学习。回复 #17 klux 的帖子
你有意见么?你也可以发啊,我没意见。 原帖由 zhengt 于 3-5-2010 23:55 发表 http://www.freeoz.org/bbs/images/common/back.gif不收费的, 你只需要注册一个otn账号, 就可以下载安装,创建自己的数据库的.
什么时候开始Oracle也不收费了啊?:o 原帖由 xblues 于 4-5-2010 00:37 发表 http://cn.freeoz.org/bbs/images/common/back.gif
什么时候开始Oracle也不收费了啊?:o
ORACLE的DB产品,都可以在ORACLE网站免费下载。
http://www.oracle.com/technology/software/index.html
正版ORACLE,是一个法律概念,不是一个技术概念。
我给一个银行 安装的生产数据库,就直接是从网站上下的。我们几乎所有的数据库,包括一部分生产系统,也是下载的。
只要你登记交钱。当然他们会给你介质,但是和网站上下载的在技术上没有区别。
所以你如果是学习或者玩玩,你完全不必理会其他的,直接下免费的就好了。
[ 本帖最后由 ma.qy 于 4-5-2010 01:00 编辑 ]
安装Oracle企业版
大家都说XE版本用来学习不够,而且正式版又是免费的,所以连夜下载了正式版,2G。下来了两个zip,解压缩,合并目录,再合并成一个ISO文件,挂接到虚拟机的Windows Server 2008 R2上就可以安装了。
我先卸载了XE,开始安装EE版本(安装的时候可以自由选择版本,反正不花钱,我就选择了EE版本,一般的功能都会有)。还需要选择是安装桌面版还是服务器版,我选择了桌面安装。接着是问设置管理员密码。安装也还可以。
安装完了一下子就看到了那么多图形化的界面和工具,看来Oracle和MS的做法不同啊。MS的XE版本看起来和企业本差不多,可是Oracle的XE和EE版本可是差了十万八千里,Oracle的XE版本顶多算是一个小型数据库引擎,工具一改省掉了。
让我慢慢研究这个Oracle。
接着学习Oracle
好久不用,没有实际需要,所以就不想学习了,最近又开始需要接触Oracle了,所以重新开始学习。Uninstall Oracle
以前安装的那个版本好久不用居然密码也忘记了。:L什么都忘记了,只好卸载,然后重新安装。
Oracle 11g 居然没有提供卸载程序!!!卸载步骤具体看这里:
http://www.emarcel.com/emarcel/database/114-uninstalldb11g
Oracle 11g的安装路径也变了,下面是卸载程序的路径:
C:\app\Administrator\product\11.2.0\dbhome_1\deinstall\
从命令行运行这个目录下的 deinstall
都按默认,最后一个问题回答Y,大部分文件都删除掉了,除了一些dll文件,重新启动机器,然后可以直接删除整个目录。
安装Oracle 11g
去Oracle网站下载企业版,最新版是11g执行setup
要求填写email,可以不填写,选择不需要通知
这一步问一下那一种安装方式,我选择第一个,也就是安装程序和数据库,完全安装。
Create and configure a database
Install database software only
Upgrade an existing database
这一步问安装方式,我选择Destop Class配置,这样可以不需要回答很多问题,能用就可以啦。
Desktop Class
Server Class
下一步寻问安装路径,默认安装在:
根目录 C:\app\Administrator
程序目录 C:\app\Administrator\product\11.2.0\dbhome_1
数据库目录C:\app\Administrator\oradata
安装版本,我选择企业版
字符集 Default,Unicode
Global database name: orcl.0.2.15
管理员密码
下一步就是安装执行以前,给你一个总结了:
占用磁盘空间:3.34G
Oracle system identifier (SID): orcl
点击开始安装。等个二十几分钟就安装好啦。
The Database Control URL is https://localhost:1158/em
tnsnames.ora 文件
参考资料:http://www.oracle-base.com/articles/misc/OracleNetworkConfiguration.php
文件位置:
C:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN
下面有三个ora文件:
listener.ora
sqlnet.ora
tnsnames.ora这个是至关重要的配置文件 我也是一直没有搞明白Oracle的结构, 好像是sid是对应SQL server的数据库实例, 然后一个用户就是对应SQL Server的一个实例下的数据库. 不知道我理解的对不对.
回复 #27 huazhb 的帖子
MS SQL 和 Oracle 不是完全可以对应起来的,从某种意义上讲Oracle的层次更加简单。Server -- SID / Database -- Schema/User -- Table
一台服务器可以安装多个SID,也就是数据库实例,这个实例就是一个数据库,下面有很多表,每个表都属于不同的Schema,用户根据可以访问的schema的不同所以可以访问的表也不同。
登陆 Database Control 管理数据库
安装好以后就可以从开始菜单里找那个Database Control 的web管理工具去配置数据库了。或者直接输入如下URLhttps://<hostname>:1158/em
安装的时候,会询问你一个管理员的密码,你登陆这个界面的时候是需要这个密码的,用户名是 system
缺省安装的数SID是 orcl 不错不错不错不错
页:
[1]
2