oracle 12c 安装指南(各类问题总结)

 

1.首先从官网下载安装包http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html这里我提供的是官网的下载地址,直接打开后选择对应的操做系统便可下载。(右上角有切换中文选项能够更清楚的了解版本信息)html

2.下载完成后,解压,而后点击安装便可(由于我安装的是12c,我会介绍这个版本安装会出现的问题与解决方案)。java

 

,3,开始安装:sql

 电子邮件不填,下面把对号去掉,而后下一步。(能够不去,我怕麻烦因此去掉了)数据库

     4,建立和配置数据库,直接点击下一步c#

5,默认桌面类,直接点击下一步(我安装的是服务器类,功能比较完整,推荐服务器类)windows

6,选中建立新的windows用户,用户名跟密码本身取,取个简单的比较好,容易记住。填好以后点击下一步,可能会弹框说你的口令跟规则的不同,服务器

    直接点击是就好了。session

7 这里的目录能够自定义,选一个内存空间比较大的盘安装,若是内存不足的话会致使后面没法安装的。口令就是你以前oracle

输入的哪个。我没试过弄个不同的。点击下一步。app

 有以下这种弹框直接点是就能够了。

9.这个时候就会检查内存什么的是否符合了,此时可能会出现path路径问题,也就是系统变量中的path文件过长,能够打开后删除一些,不过不建议这么作,若是出现此问题先忽略,等会我会讲述手动配置方案。

10 检查完经过以后,会给你这个信息,你能够截图保存一下,之后可能会用到。点击安装。

11,以后就是耐心等待安装了。

12,接着会弹出以下框出来,点击口令管理。去设置口令。这一步最为关键,我第一次就是不当心忽略了这个而花费了大量的时间去查阅资料才解决了这个问题,若是你也不当心关掉了这个界面,不用慌,不用去重装,等下面我会提供解决方案,下图是正常过程。

13,SYS SYSTEM以后就是你要用到的用户了。你能够填写口令,不过必定要记住。以后的oracle连接都是用户跟口令经过才能够连接成功,不填的话会默认为你以前的口令。这里我没有填,直接点击肯定。

14,点击肯定。

15,这下你就安装成功了。点击关闭就能够了。

16,运行哪里像输入cmd同样输入sqlplus 会弹出一下这个

输入米的用户名跟密码就能够了,也能够这样输入:SYSTEM/123456 ,123456只是列子,就是你的密码

显示一下这个就说明你成功安装了。

以上就是oracle12c的所有安装流程了若是按照上图所示显示 已链接,那么恭喜你顺利的安装了Oracle;

若是并不能出现已链接字样,那么就要提一下我前面的两个伏笔了。

1.首先是忽略的环境变量问题

打开win+r窗口后输入sqlplus.exe会提示找不到文件,这就是环境变量问题,相信安装过java jdk的都应该有所利了解。

解决方案:个人电脑(右击)->属性->环境变量->下面有个系统变量->找到path(双击)->新建(目录是你本身设定的Oracle的安装位置这是个人path内容:E:\Oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN,在文件管理器中根据这个目录依次找到admin,而后复制进path里的新建框)。

环境变量配置正确便可出现此窗口。

2.忘了配置用户口令或没有创建用户scott

网上的教程多为oracle 11g,而12c 又有所不一样,我只讲操做方法,具体原理不在细述,感兴趣的能够度娘。

解决方案:由于没有普通用户,因此咱们就新建一个。

方法以下:

一.若是没有配置口令按以下方法操做:

1.进入运行窗口或者命令行,输入sqlpus;

 2.输入用户名:sys;

输入口令:sys as sysdba;   //注意不要丢失空格,输入口令是不能看到的因此尽可能不要敲错

 3.输入alter user scott account unlock;

用户已更改

 4.输入commit;//提交数据之意

提交完成

  5.输入 conn scott/tiger

已链接。

 二.若是提示用户不存在

1.进入运行窗口或者命令行,输入sqlpus;

 2.输入用户名:sys;

输入口令:sys as sysdba;   //注意不要丢失空格,输入口令是不能看到的因此尽可能不要敲错

1、验证scott用户是否存在

用oracle用户登陆 su - oracle ,以后用sys用户登陆数据库

$sqlplus / as sysdba

SQL>conn scott/tiger

ORA-28000:the account is locked

此时说明soctt用户被锁定或者不存在,先解锁试试

$sqlplus / as sysdba

SQL>alert user scott account unlock;

ORA-01918: user scott does not exist

此时说明scott用户不存在

添加scott用户

1.咱们以SYS用户从新链接

SQL>conn sys/密码 as sysdba   //密码默认sys

2.执行scott.sql文件     

SQL>@F:\oracle\product\10.2.0\db_1\RDBMS\ADMIN\scott.sql

这样scott用户就被添加进来,默认密码是tiger

SQL>conn scott/tiger 链接成功       //我是属于那种添加后也无法链接成功的状况,因此我新建了用户C##scott

SQL>SHOW USER;

USER为“SCOTT”

3.若是想修改scott的默认密码能够执行下面命令(先以sys权限登陆:sqlplus / as sysdba)

修改scott的登陆密码

SQL> alter user scott identified by tiger;

可是在12版本中有一点很值得注意,那就是新建用户的方法:

create user c##scott identified by tiger   //用户名必须以c##开头 

 而后受权。//方法在下文

1.用户登陆:用户名:scott,密码:scott

1.Oracle中的各个用户以下:

0.数据库统一管理帐号:orcl

 

1.普通用户:用户名:scott,密码:scott

2.普通管理员:system,密码:system

3.超级管理员:用户名:sys,密码:sys

2.为了便于记忆,用户名和密码同样

2.修改用户口令,

1.在doc窗口修改

1.此操做必需要在system这个帐号下才能进行,不然没有权限,在这个帐号下能够修改任何用户的口令

 

2.语法为:alter user 用户名 identified by 新口令;

如:alter user system identified by system;

3.当回车后出现用户已更改,则表示修改为功

2.在sqlplus中修改

1.以管理员身份登陆

2.执行sql语句

如:alter user system identified by system;

3.对没有解锁的用户进行解锁并修改口令

1.在doc窗口修改

1.基本语法:alter user 用户名 account unlock;

如:alter user hr account unlock;

2.该操做也必需要在system用户下进行操做

2.在sqlplus中修改

1.以管理员身份登陆

2.执行sql语句

如:alter user hr account unlock;

 

  下面是一些操做:

1,建立表空间

create tablespace hxzg_data

logging

datafile 'C:\app\data\hxzg_data.dbf'

size 50m

autoextend on

next 50m maxsize 20480m ;

2,建立用户

create user db_hxzg identified by 123 

default tablespace hxzg_data;

3,复权

grant resource,connect to db_hxzg;

4,给其余用户访问权限(db_hxzg以DBA权限登陆)

grant select any table to sun;

 

建立

create user sun identified by 123;        //建立用户

alert user sun identified by tiger;      //修改密码

删除

drop user sun cascade;            //删除用户及对象

drop user sun;                        //删除用户

受权

一、默认的普通用户sun默认未解锁,不能进行那个使用,新建的用户也没有任何权限,必须授予权限

grant create session to sun;            //授予sun用户建立session的权限,即登录权限
grant unlimited tablespace to sun;  //授予sun用户使用表空间的权限
grant create table to sun;              //授予建立表的权限
grant drop any table to sun;                //授予删除表的权限
grant insert any table to sun;               //插入表的权限
grant update any table to sun;             //修改表的权限

grant all to public;                         //这条比较重要,授予全部权限(all)给全部用户(public)

二、oralce对权限管理比较严谨,普通用户之间也是默认不能互相访问的,须要互相受权

  

  grant select on tablename to sun;//授予sun用户查看指定表的权限

  grant drop on tablename to sun;//授予删除表的权限

  grant insert on tablename to sun;//授予插入的权限

  grant update on tablename to sun;//授予修改表的权限

  grant insert(id) on tablename to sun;

  grant update(id) on tablename to sun;//授予对指定表特定字段的插入和修改权限,注意,只能是insert和update

  grant alert all table to sun;//授予sun用户alert任意表的权限

撤销权限

  基本语法同grant,关键字为revoke

查看权限

  select * from user_sys_privs;//查看当前用户全部权限

  select * from user_tab_privs;//查看所用用户对表的权限

权限传递

  即用户A将权限授予B,B能够将操做的权限再授予C,命令以下:

  grant alert table on tablename to sun with admin option;//关键字 with admin option

  grant alert table on tablename to sun with grant option;//关键字 with grant option效果和admin相似

角色

  角色即权限的集合,能够把一个角色授予给用户

  create role myrole;//建立角色

  grant create session to myrole;//将建立session的权限授予myrole

  grant myrole to sun;//授予sun用户myrole的角色

  drop role myrole;删除角色

相关文章
相关标签/搜索