首页 > 代码库 > Oracle-博主带你少走弯路!

Oracle-博主带你少走弯路!

写这篇博客的原因:

经常在一些运维开发技术交流群里看到一些人问一些关于Oracle问题(dba新手或者运维新手),但是很少有人回答此类问题。问题:

    1.1)截图+这个Oracle报错怎么解决?

    1.2)Oracle怎么安装啊?怎么安装失败啊?

    1.3  Oracle权限怎么管理啊?Oracle表空间不够了怎么办啊?

     ...

我也经常碰到此类问题,不是没人回答你,而是此类问题根本不好回答。即使解决了一个,可能接下来的又会出现别的问题,即使你搜了这个报错(可能怎么解决的你都是迷迷糊糊的,执行的什么命令都不知道),最后导致服务都不能起来,报错更是一大堆。而且技术交流群别人给你的建议也仅仅是建议,出现什么后果也没人给你买单。因此,关键还得靠自己。


如果上述问题你也有同感,这篇博客你可以继续了,当然也可不看。

##############################################################


你可以构想一个场景,你老板让你搞Oracle,一无所知的你当时心中该是何等的无语。但是又不得不做,可能就是网上先找一些文档看看,尝试安装,可能自己稀里糊涂的,另外就是一些报错问题,询问一些群,寻求帮助,一切貌似没什么问题,那么我可以很负责的告诉你,Oracle短时间你也吃不消。


这大概就是我今天要写这篇博客的原因。分享一下个人经验,如有什么错误,欢迎老司机指出。大家如果想博主写一些关于Oracle的东西,可以留言或者发私信博主,有时间的话,会详细写一下


1、Oracle的安装问题(当然也有一些定制的镜像比一步步安装简单多了)

eg:Oracle基本安装环境,版本要求等。而且安装要有图形界面(centos6.x)

Oracle 11g R2数据库安装硬件配置要求:

最小内存 1 GB of RAM grep MemTotal /proc/meminfo

虚拟内存容量:grep SwapTotal /proc/meminfo

技术分享

硬盘要求:数据库软件硬盘空间需求:

技术分享

技术分享


2、依赖环境

安装Oracle依赖包是少不了了,这里给你的意见是系统要最小化安装,准备好你的yum源,

先做实验,写个安装文档,没有熟悉之前,不要搞生产环境。


3、安装过程

安装过程比较简单,只是注意写个记录。最好在word里,自己配置的东西加个截图,不要搞个文本文档(除非是一步步能做出来的,只是我觉得生产文档一般应该是word或者pdf格式),如果是个人研究,可以在有道云笔记做个笔记也可以,看个人而已,只是一定要写文档而已。顺利的话,你应该到这一步是没问题的。

技术分享


4、创建数据库并启动|停止Oracle服务

一般安装完Oracle的时候,你可以进去控制台启动服务,也可以用dbca创建个数据库,然后再启动,不过启动的时候会遇到一些错误。(此时不要着急,无非是一些参数没有配置好,把你的报错百度或者谷歌搜一下自己解决就行),不要图省事,报错是好事,自己解决,而且要明白为什么报错。

eg:

技术分享

解决方式:

cp/home/oracle/app/admin/offcms/pfile/init.ora.6212016115627/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/initorcl.ora


5、启动|关闭监听端口,并熟悉如何修改默认监听端口

eg:

技术分享

技术分享

如果到了这一步,你可以理解安装并启动了Oracle,此时你大概可以理解会基本安装了。


6、Oracle安装的目录结构

eg:

技术分享

注意:根据自己定义的安装路径,而且不同oracle版本,目录结构也有些许的变化。


7、权限问题(重点)

Oracle权限问题是个说道,这里比较多,需要自己整理一下权限。

eg:

一、权限分类:

系统权限:系统规定用户使用数据库的权限。(系统权限是对用户而言)。

实体权限:某种权限用户对其它用户的表或视图的存取权限。(是针对表或视图而言的)。

二、系统权限管理:

1、系统权限分类:

DBA: 拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。

RESOURCE:拥有Resource权限的用户只可以创建实体,不可以创建数据库结构。

CONNECT:拥有Connect权限的用户只可以登录Oracle,不可以创建实体,不可以创建数据库结构。

对于普通用户:授予connect, resource权限。

对于DBA管理用户:授予connect,resource, dba权限。

2、系统权限授权命令:

[系统权限只能由DBA用户授出:sys,system(最开始只能是这两个用户)]

授权命令:SQL> grant connect, resource, dbato 用户名1 [,用户名2]…;

[普通用户通过授权可以具有与system相同的用户权限,但永远不能达到与sys用户相同的权限,system用户的权限也可以被回收。]

技术分享


8、Oracle数据库的表空间创建和管理(授权)(重点)

eg:

创建数据表空间

createtablespace yzhfdb datafile ‘/home/oracle/app/oradata/orcl/yzhfdb.dbf‘ size1024m autoextend on;

createtablespace yzhfdata datafile ‘/home/oracle/app/oradata/orcl/yzhfdata.dbf‘ size2048m autoextend on;

create tablespace tencrwindb datafile ‘/home/oracle/app/oradata/orcl/tencrwindb01.dbf‘size 1024m autoextend on;

 

创建数据库用户并授权

create useryzhfdata identified by yzhfdata default tablespace yzhfdata;

create useryzhfdb identified by yzhfdb default tablespace yzhfdb;

createdirectory my_dir as ‘/home/oracle/expdp_bak‘; --用于备份还原

 

grantconnect,resource,dba to yzhfdb;

grantconnect,resource,dba to yzhfdata;

grantread,write on directory my_dir to yzhfdb;

grant read,write on directory my_dir to yzhfdata;


9、数据库的备份和还原(重点)

技术分享

技术分享

技术分享

如果熟悉了自带的命令备份之后可以了解其它备份方式。


10、EM管理

eg:

技术分享

到了这个步骤你算是会基本管理Oracle了。


11、深入Oracle

日志管理,表空间管理,常见报错管理,主从管理等


12、注意事项和建议

Oracle是个复杂的数据库,并不要指望仅仅会安装配置就行。根据本人的经验,可以买一些书,结合一些视频,生产环境中遇到问题解决问题,不断积累自己。要对生产环境有敬畏之心,数据不要乱搞。注意数据库的备份以及可用性等


今天先写到这里,有什么问题欢迎指出。http://renzhiyuan.blog.51cto.com/




本文出自 “任志远51CTO博客” 博客,谢绝转载!

Oracle-博主带你少走弯路!