06
2019
01

oracle11g安装配置

之前有安装oracle11g,但都是装好了不会用,今天试了下能安装成功、配置好、然后可以用客户端连接使用,这里肯定要查很多的相关资料,不然也弄不好。

下面简单记录一步骤:

1、下载

下载文件一共有两部分:

https://download.oracle.com/otn/nt/oracle11g/112010/win64_11gR2_database_1of2.zip

https://download.oracle.com/otn/nt/oracle11g/112010/win64_11gR2_database_2of2.zip

下载到同一个目录,右键选择“解压到当前文件夹(X)”,两个文件都解压好之后,都会被解压到当前目录下面database文件夹中


2、安装

双击setup.exe打开安装向导。

不同小版本可能界面不太一样,但大致差不多,参考: https://blog.csdn.net/wudiyong22/article/details/78904361

检查先决条件时,如果检查不过可以忽略、继续安装(我电脑内存16G,完全不用担心,如果是内存、硬盘不足估计忽略也是安装不下去的,这就没办法了)

默认实例 ORCL,如无必要,建议不用改。

记住安装时你输入的管理口令,后面登录系统要用。



3、配置监听程序

打开:开始菜单->Oracle - OraDb11g_home1->配置和移值工具->Net Manager

点击默认的listener,原来只有地址1(默认只能通过localhost连接),点击左下角添加一个地址2,如图,端口与地址1一样,把localhost换成ip地址(比如:192.168.0.11),才能被外部访问或者自己用ip访问

原来的:


新加的:

(配置后要重启实例)


4、把oracle服务设置为手动启动

避免每次开机都慢,在服务中,把这几个设置为手动启动就好了。


还有为了以后方便快速启动oracle,可以做两个bat来启动和停止服务


启动Oracle服务.bat

net start "OracleDBConsoleorcl"
net start "OracleMTSRecoveryService"
net start "OracleOraDb11g_home1TNSListener"
net start "OracleServiceORCL"
pause


停止Oracle服务.bat

net stop "OracleDBConsoleorcl"
net stop "OracleMTSRecoveryService"
net stop "OracleOraDb11g_home1TNSListener"
net stop "OracleServiceORCL"
pause

放在桌面就好,文件不大,net命令需要管理员权限,右键“以管理员身份运行(A)”就行:

停止:

启动:


5、创建登录用户、然后创建表、操作表测试

oracle自家的免费客户端:Oracle SQL Developer

windows有两个链接,一个是with jdk 8(电脑没装jdk 8 时使用) ,一个是不包含jdk 8(如果你电脑上已经装了jdk 8 就使用这个)

下载页面:https://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html


新建数据库连接,用SYS用户:

创建tester用户,并授权

create role opr_db;--创建一个专用角色,用来控制测试用户的权限
grant create session,create table,update table,insert table,create view,create SEQUENCE,create TRIGGER,create procedure to opr_db;
create user tester identified by test123456;--创建一个测试用户
--grant opr_db to tester;--给测试用户授予角色权限
--revoke opr_db from tester;
grant dba to tester;--权限太多,如果只是自己测试,直接给DBA权限,省事



创建新连接,使用tester用户


执行创建表、插入数据等sql:

--使用测试用户创建表、序列、触发器
CREATE TABLE T_USERS 
(
  ID NUMBER NOT NULL 
, NAME VARCHAR2(20) NOT NULL 
, AGE INT NOT NULL 
, REMARK VARCHAR2(200) 
);
CREATE UNIQUE INDEX IX_T_USERS_ID ON T_USERS (ID ASC);
COMMENT ON COLUMN T_USERS.ID IS '主键';
COMMENT ON COLUMN T_USERS.NAME IS '姓名';
COMMENT ON COLUMN T_USERS.AGE IS '年龄';
COMMENT ON COLUMN T_USERS.REMARK IS '备注';
--创建序列,处理自增字段
-- drop SEQUENCE SEQ_USERS_ID;
CREATE SEQUENCE SEQ_USERS_ID
        INCREMENT BY 1 
        START WITH 1 
        NOMAXvalue 
        NOCYCLE 
        NOCACHE;
--创建触发器,在新增数据时更新自增列
CREATE OR REPLACE TRIGGER T_USERS_ID_SEQ_TRIGGER
  BEFORE INSERT ON T_USERS
  REFERENCING OLD AS OLD NEW AS NEW FOR EACH ROW
    DECLARE
    BEGIN
      SELECT SEQ_USERS_ID.NEXTVAL INTO :NEW.ID FROM DUAL;
    END T_USERS_ID_SEQ_TRIGGER;
--测试新增一条数据
insert into T_USERS(NAME,AGE) values('tester1',16);
--查询数据
select * from T_USERS;


到此整个过程算是完成了。

其实作为软件设计工程师,哪里要搞这些东西,平时就只要建表、建存储过程,然后对数据增、删、改、查就好了,这些东西要搞也没权限,有专门的DBA,咱怎么可能有这权限?呵呵。

要学习这些东西,只有在自己电脑上装个数据库去玩了,建议电脑内存少于8G的就不用玩了,太卡,16G内存开oracle然后操作几下,内存占8G左右(可能是动态占用)。




版权声明:
作者:真爱无限 出处:http://www.pukuimin.top 本文为博主原创文章版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接.
« 上一篇下一篇 »

相关文章:

评论列表:

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。