设为首页 收藏本站
查看: 880|回复: 0

[经验分享] oracle 12c 安装指南(各种问题总结)

[复制链接]

尚未签到

发表于 2017-12-11 07:18:30 | 显示全部楼层 |阅读模式
  下一学期要学习数据库的知识,趁着敲代码之余,安装著名的oracle来放松一下
  1.首先从官网下载安装包http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html这里我提供的是官网的下载地址,直接打开后选择对应的操作系统即可下载。(右上角有切换中文选项可以更清楚的了解版本信息)
  2.下载完成后,解压,然后点击安装即可(因为我安装的是12c,我会介绍这个版本安装会出现的问题与解决方案)。 DSC0000.png
  
  ,3,开始安装:
  电子邮件不填,下面把对号去掉,然后下一步。(可以不去,我怕麻烦所以去掉了)
   DSC0001.png
  4,创建和配置数据库,直接点击下一步
   DSC0002.jpg
  5,默认桌面类,直接点击下一步(我安装的是服务器类,功能比较完整,推荐服务器类)
   DSC0003.jpg
  6,选中创建新的windows用户,用户名跟密码自己取,取个简单的比较好,容易记住。填好之后点击下一步,可能会弹框说你的口令跟规则的不一样,
  直接点击是就行了。
   DSC0004.jpg
  7 这里的目录可以自定义,选一个内存空间比较大的盘安装,如果内存不足的话会导致后面无法安装的。口令就是你之前
  输入的哪一个。我没试过弄个不一样的。点击下一步。
   DSC0005.jpg
  有如下这种弹框直接点是就可以了。
   DSC0006.jpg
  9.这个时候就会检查内存什么的是否符合了,此时可能会出现path路径问题,也就是系统变量中的path文件过长,可以打开后删除一些,不过不建议这么做,如果出现此问题先忽略,等会我会讲述手动配置方案。
   DSC0007.jpg
  10 检查完通过之后,会给你这个信息,你可以截图保存一下,以后可能会用到。点击安装。
   DSC0008.jpg
  11,之后就是耐心等待安装了。
   DSC0009.jpg
  12,接着会弹出如下框出来,点击口令管理。去设置口令。这一步最为关键,我第一次就是不小心忽略了这个而花费了大量的时间去查阅资料才解决了这个问题,如果你也不小心关掉了这个界面,不用慌,不用去重装,等下面我会提供解决方案,下图是正常过程。
   DSC00010.jpg
  13,SYS SYSTEM之后就是你要用到的用户了。你可以填写口令,不过一定要记住。之后的oracle链接都是用户跟口令通过才可以链接成功,不填的话会默认为你之前的口令。这里我没有填,直接点击确定。
   DSC00011.png
  14,点击确定。
   DSC00012.png
  15,这下你就安装成功了。点击关闭就可以了。
   DSC00013.jpg
  16,运行哪里像输入cmd一样输入sqlplus 会弹出一下这个
  输入米的用户名跟密码就可以了,也可以这样输入:SYSTEM/123456 ,123456只是列子,就是你的密码
  显示一下这个就说明你成功安装了。
   DSC00014.jpg
  以上就是oracle12c的全部安装流程了如果按照上图所示显示 已连接,那么恭喜你顺利的安装了Oracle;
  如果并不能出现已连接字样,那么就要提一下我前面的两个伏笔了。
  1.首先是忽略的环境变量问题
  打开win+r窗口后输入sqlplus.exe会提示找不到文件,这就是环境变量问题,相信安装过java jdk的都应该有所利了解。
  解决方案:我的电脑(右击)->属性->环境变量->下面有个系统变量->找到path(双击)->新建(目录是你自己设定的Oracle的安装位置这是我的path内容:E:\Oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN,在文件管理器中根据这个目录依次找到admin,然后复制进path里的新建框)。
   DSC00015.png
  环境变量配置正确即可出现此窗口。
  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;   //注意不要丢失空格,输入口令是不能看到的所以尽量不要敲错
  一、验证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>>
  但是在12版本中有一点很值得注意,那就是新建用户的方法:
  create user c##scott>
  然后授权。//方法在下文
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 用户名>如:alter user system>3.当回车后出现用户已更改,则表示修改成功
2.在sqlplus中修改
1.以管理员身份登录
2.执行sql语句
如:alter user 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>
  default tablespace hxzg_data;
  3,复权
  grant resource,connect to db_hxzg;
  4,给其他用户访问权限(db_hxzg以DBA权限登录)
  grant select any table to sun;
  
  创建
  create user sun>
  alert user sun>
  删除
  drop user sun cascade;            //删除用户及对象
  drop user sun;                        //删除用户
  授权
  1、默认的普通用户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)
  2、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;删除角色

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-422839-1-1.html 上篇帖子: ORACLE 11.2.0.4 RAC安装在rhel6上 下篇帖子: Oracle数据库以date类型保存日期时,Java中用哪个类对应数据库的date类型?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表