安装64位的Oracle 11gR2 和创建数据库/表的详细教程(一套流程:安装好后,到建表;以及创建新的数据库、用户)

本文知识点(目录):

  一、Oracle 安装步骤
  二、创建数据库、用户、数据表流程
      2.1、方式一:直接使用系统自带的orcl数据库和scott用户来操作。
      2.2、方式二:不想用系统自带的orcl数据库和scott用户来操作,想要重新,新建一个数据库和普通用户来操作。
  三、常用的Oracle 操作命令



一、Oracle数据库软件的安装步骤  

注意事项:

  a、Oracle 一旦安装不成功,卸载非常麻烦。还得清理掉Oracle的注册表 等待,否则永远也无法再成功安装,除非重装电脑系统。

  b、安装路径:要么使用默认的安装路径;如果要安装到其他磁盘下,建议安装路径不要有空格(文件夹不要有空格,比如这样的空:Oracle DB).

  c、安装过程中,如果杀毒软件提示(弹出框提示)是否阻止该软件的某某某修改权限时,一定要允许本次操作或者允许所有操作,避免安装失败。

 

1、解压安装包到同一个文件夹下(推荐:先解压第一个,再解压第二个。当然啦,也可以同时一起解压)

2、双击setup.exe 开始安装

3、把图中的勾勾取消掉后,点击“下一步”。

4、当,弹出下面的框框时,选择“是”,再点击“下一步”。

5、这里不用管,默认就行,直接“下一步”。

6、我安装在笔记本电脑上的,这里也是默认,直接点击“下一步”。

7、设置安装路径(默认也行),和设置密码

8、这里把“全部忽略”打上勾勾后,直接点击“下一步”。

9、点击“完成”,等待安装即可。

10、这里,直接点击“确定”,不需要点“口令管理”,sys(超级管理员)、system(系统管理员)、scott(普通用户)使用默认的密码,不需要修改。

sys的默认密码:change_on_install   ----->命令行窗口登录(尾部不要分号):sqlplus sys/change_on_install as sysdba

system的默认密码:manager     ----->命令行窗口登录(尾部不要分号):sqlplus sys/manager as sysdba 或者 sqlplus system/manager as sysdba

如果是按照我的步骤来,Oracle数据库软件安装好后,下面六种方式都可以连接登录orcl数据库(就是刚刚安装好的数据库):

1 方式一,默认密码登录:
2 sqlplus sys/change_on_install as sysdba  -- 超级管理员登录
3 或者 sqlplus sys/manager as sysdba  -- 超级管理员登录
4 或者 sqlplus system/manager as sysdba  -- 普通/系统管理员登录
5
或者 sqlplus / as sysdba -- 超级管理员登录
6 7 方式二,用设置的密码登录:(安装Oracle数据库软件时,设置的,即:安装流程 第7步) 8 sqlplus sys/oracle as sysdba -- 超级管理员登录 9 或者 sqlplus system/oracle as sysdba -- 普通/系统管理员登录

11、打开命令提示符窗口,测试Oracle是否安装成功。

或者

1 -- 严谨的连接方式:sqlplus 用户名/密码@数据库名称 as sysdba  如果你的系统里创建了多个数据库,那么就必须用这种指定数据库名称的方式登录
2 sqlplus sys/oracle@orcl as sysdba   -- sysdba:系统管理员

 到此处,安装Oracle数据库软件的整个流程已结束

 

二、创建数据库、用户、数据表的流程  

返回顶部

Oracle数据库安装好后,下面我们来创建用户,以及用户的授权和创建数据表的流程。

  MySQL:创建“数据库”---->创建“表”---->“表”内的CRUD操作。

  Oracle:创建“数据库”---->创建“用户”---->用户授权---->创建“表”---->“表”内的CRUD操作。

  2.1、方式一:直接使用系统自带的orcl数据库和scott用户来操作。

      2.1.1、首先用超级管理员连接登录orcl数据库,然后解锁scott用户。

1 sqlplus sys/oracle@orcl as sysdba -- 连接数据库orcl
2 alter user scott account unlock; -- 解锁scott用户,如果不解锁,则使用不了该用户
3 alter user scott identified by tiger; -- 给scott用户初始化密码,以便用scott用户来连接并操作orcl用户。

      2.1.2、上面的步骤完成后,即可使用scott用户来连接orcl数据库、以及创建数据表等操作了。

sqlplus scott/tiger@orcl  -- 使用普通用户scott连接数据库orcl

解析:因为scott用户是系统自带的,自身已经有连接数据库、创建表、操作(CRUD)表 等等权限了,不需要我们在授权。

1 select * from session_privs; -- 查看当前用户已拥有的所有权限
2 select * from tab; -- 查看该数据库下的所有表;   MySQL语句:show tables;
3 drop user 用户名 cascade; -- 删除指定用户

   2.1.3、因为scott用户已有相关权限,下面我们就可以直接创建数据表了

create table users( -- 创建表
   id number(5) primary key,
   account varchar2(20) not null,
   password varchar2(20) not null
);

 create sequence users_seq; -- 创建序列;由于Oracle没有自增一说,所以要借助序列来实现自增长。(这里只是简单演示,所以序列也就简单的创建)

insert into users values(users_seq.nextval,'wangwu','123456'); -- 插入数据
commit-- 如果使用select * from tab 能查得到users表;但是desc users 或select * from users查询时,出现“ORA-00942 表或视图不存在”。那就commit 一下,再查询。或者加个双引号查询:select * from "users";

 

2.2、方式二:不想用系统自带的orcl数据库和scott用户来操作,想要重新,新建一个数据库和普通用户来操作。

返回顶部

  2.2.1、首先,创建数据库shore。

      可参考:https://blog.csdn.net/jiaruochao/article/details/52128719  或者  https://www.cnblogs.com/manmanlu/p/5993449.html

  2.2.2、再用超级管理员sys连接shore数据库,并且创建一个普通用户(zhangsan/123456),并且授予相关的权限:建库权、建表权、表的CRUD操作权等等。(注:如果不授权,该用户内则不能创建表,也不能向该数据库下的表进行CRUD操作)

1 create user zhangsan identified by 123456; -- 创建用户zhangsan,密码为123456
2 grant create session,create table,create sequence,create view,resource to zhangsan; -- 授权

解析:
授予zhangsan用户创建session的权限,即登陆权限:grant create session to zhangsan;
授予zhangsan用户创建table的权限:grant create table to zhangsan;
授予zhangsan用户创建sequence的权限:grant create sequence to zhangsan;
授予zhangsan用户操作表空间的权限:grant resource to zhangsan;

或者:直接一起执行后面的四个授权  grant create session,create table,create sequence,create view,resource to zhangsan;

  2.1.3、最后关闭命令行窗口,重新打开,或者输入 exit 回车,再用zhangsan用户连接登录shore数据库,然后就可以创建数据“表”了

 1 sqlplus zhangsan/123456   -- 连接数据库
 2 
 3 create table users( -- 创建表
 4   id number(5) primary key,
 5   account varchar2(20) not null,
 6   password varchar2(20) not null
 7 );
 8 
 9 create sequence users_seq; -- 创建序列;由于Oracle没有自增一说,所以要借助序列来实现自增长。(这里只是简单演示,所以序列也就简单的创建)
10 
11 insert into users values(users_seq.nextval,'wangwu','123456'); -- 插入数据
12 commit; -- 如果使用select * from tab 能查得到users表;但是desc users 或select * from users查询时,出现“ORA-00942 表或视图不存在”。那就commit 一下,再查询。或者加个双引号查询:select * from "users";

Oracle 创建序列的详解:https://www.cnblogs.com/dshore123/p/8269537.html

到此处,Oracle 的整套安装------>建表流程已完结。

 

三、附:常用的Oracle操作指令  

返回顶部

 1       --  命令行窗口,常用的命令  --
 2 -- 下文中的汉字 都要换成您对应、所需的字段名称。
 3 sql>alter user 用户名 account lock; -- 锁定用户
 4 sql>alter user 用户名 account unlock;  -- 解锁用户
 5 sql>show user;  -- 查看当前用户
 6 sql>create user 用户名 identified by 密码;  -- 创建用户
 7 sql>alter user 用户名 identified by 密码; -- 修改用户的密码
 8 sql>drop user 用户名 cascade;  --删除用户
 9 sql>select * from dba_users;  -- 查看数据库中所有的用户,前提:你必须有dba权限的帐号,如:sys,system
10 sql>select * from all_users;  -- 查看当前用户能管理的所有用户
11 sql>select * from user_users;  -- 查看当前用户信息
12 
13 sql>select * from user_role_privs;  -- 查看当前用户的所拥有的角色
14 
15 sql>grant 权限名 table to 用户名;  -- 给某用户授予某种权限,具体自己指定
16 sql>grant dba to 用户名;  -- 授予管理员的权限
17 sql>revoke 权限名 from 用户名;  -- 收回某用户的某种权限
18 sql>select * from user_sys_privs;  -- 查看当前用户的系统权限(如果新建的普通用户,那么结果集就是管理员授予的权限)
19 sql>select * from session_privs;  -- 查看当前用户的当前会话所具有的系统权限
20 
21 sql>select * from tab;  -- 查看当前用户下的所有表
22 sql>select * from 表名称;  -- 查看表中的数据
23     --  ... 表的CRUD、字段的CRUD都和MySQL一样 ...  --
24 
25 sql>clear screen 或 sql>host cls  -- 清屏
26 sql>exit; 或 sql>quit;  -- 退出 该账户的连接,在运行一遍,则关闭命令行窗口

MySQL 对表、字段、数据的CRUD操作的详细指令:https://www.cnblogs.com/dshore123/p/10544241.html

更多Oracle 指令:https://www.cnblogs.com/dshore123/p/8622757.html

 

 

 

 

 

原创作者:DSHORE

作者主页:http://www.cnblogs.com/dshore123/

原文出自:https://www.cnblogs.com/dshore123/p/12149395.html

版权声明:欢迎转载,转载务必说明出处。(如果本文对您有帮助,可以点击一下右下角的 推荐,或评论,谢谢!

posted @ 2020-01-04 16:13  DSHORE  阅读(2593)  评论(0编辑  收藏  举报