Oralce新建数据库、新建远程登录用户全过程
Oracle安装完后,其中有一个缺省的数据库,除了这个缺省的数据库外,我们还可以创建自己的数据库。
对于初学者来说,为了避免麻烦,可以用'Database Configuration Assistant'向导来创建数据库。
创建完数据库后,并不能立即在数据库中建表,必须先创建该数据库的用户,并且为该用户指定表空间。
关系:一个大的数据中分为几个表空间,创建几个用户然后指定对应的表空间并授权,这样用户就独立操作自己的资源了,每每用户登录进入后,在自己的表空间中新建表啊等等对象,互不干扰。
下面是创建数据库用户的具体过程:
1.假如现在已经建好名为'news'的数据库,此时在E:\app\Administrator\oradata\目录下已经存在db2目录(注意:我的Oracle11g安装在E:\app下)。
2.在创建用户之前,先要创建表空间
其格式为:格式: create tablespace 表间名 datafile '数据文件名' size 表空间大小;
如:
SQL> create tablespace db2tabs
datafile 'E:\app\Administrator\oradata\db2\db2tabs.dbf'
size 500M;
其中'db2tabs'是你自定义的表空间名称,可以任意取名;'E:\app\Administrator\oradata\db2\db2tabs.dbf'是数据文件的存放位置,一般存放在你的实例(数据库)目录下,'db2tabs.dbf'文件名也是任意取;'size 500M'是指定该数据文件的大小,也就是表空间的大小。
3.现在建好了名为'db2tabs'的表空间,下面就可以创建用户了
其格式为:格式: create user 用户名 identified by 密码 default tablespace 表空间表;
如:
SQL> create user user2 identified by user2 default tablespace db2tabs;
--这里创建了user2用户,密码为user2,默认表空间'default tablespace'使用上面创建的表空间,若不指定,则默认表空间为users,临时表空间为temp。
--修改用户默认表空间:alter user news default tablespace xxx;
--修改用户密码:alter user news identified by xxx;
--锁定账户:alter user news account lock; --对应的还有解锁,就是unlock
4.接着授权给新建的用户
SQL> grant connect,resource to user2; --表示把 connect,resource权限授予news用户
SQL> grant dba to user2; --表示把 dba权限授予给news用户
授权成功。
--把某个对象授权:grant select on scott.dept to news --把scott用户的dept表的select权限授予news用户
--连带授权:grant select on scott.dept to news with grant option --这时news用户也有了可以把scott.dept对象的select权限授予其他用户的权限,上面的那个授权是在超级管理员下授权的,而在这里,news也有权授权了
--授权所有:grant all on scott.dept to news --scott.dept对象的所有权限都授予news用户了
--解除权限:revoke select on scott.dept to news
注意,官方推荐,因为角色少,用户多,所以我们一般是创建一种角色,并授予相应的权限,然后把要创建的用户隶属与此角色,这样用户就拥有了角色所拥有的权限,而不是直接对用户授权,这样便于管理,如下:
--创建myrole角色:create role myrole;
--授予其dba和create tablespace权限:grant unlimited tablespace,dba to myrole;
--隶属于角色:grant myrole to news
5、新建对象
授权成功后就可以新建各种对象了,这里举例新建表:
首先以上面创建的news用户登录,然后创建表:
create table tt(t varchar2(10));
--这样新建的表tt的默认表空间是在news用户的默认表空间,如果你想把表建在其他表空间,这样:
create talbe tt(t varchar2(10)) tablespace othertabs;
------------------------------------------------------------------------------------------------------------------
另外,在团队协作的时候,一般呢我们是给每个人一个账户来进行远程登录到自己的服务器中操作的,比如,对于scott用户的所有资源,我想新建一个kute用户,但是拥有scott用户所有的资源,也就是每个用户的资源都是一样的。就可以这样做:
新建用户,分配给其他人使用登录到我的服务器
1.备份scott用户
首先新建要存储备份的文件夹:e:\oracle_new_scott\
在dos窗口中进入此文件夹,然后输入:exp
目的就是将scott用户的所有资料导出到此文件夹,exp也就是export,导出。
输入回车后,提示输入用户名和密码,这里输入要导出的用户scott和密码。
2.创建用户
首先应该以超级管理员的身份进入你的数据库
sqlplus sys/kute@db2 as sysdba;
--然后再创建用户,可以的话就先创建自己的表空间,这样最好了,如果不创建那么就使用默认的users表空间
create user user2 identified by user2 default tablespace users quota 10M on users
--这里的quota是把users表空间的10M空间给了user2用户
、授权
grant create session,create table,create view,connect to kute
--这里如果出现导入不成功的话,那么授权的时候还要将unlimited tablespace权限授予
4.导入
同样在那个文件夹中输入:imp
出现一大堆东西,一直回车即可,注意,总共有两次要你输入用户名称:第一次,输入谁要导入的用户,这里是user2@db2,这里user2是我的用户,db2是全局数据库名称,必须这样写,否则报错用户名/口令不正确,它找不到用户,因为你的用户是在db2下新建的;第二次,输入要把谁导入,这里是scott。然后一直回车即可,完成。
这样,就创建了一个拥有scott用户所有资源的可以用于远程登录的user2用户。
下面贴出我创建用户的过程:首先我新建了一个db2的数据库,然后:


这样用户就创建完成了。下面是我的测试代码:

注意:如果你通过角色给用户授权,那么在将db2role角色授予用户user2之后,还要授予user2用户users表空间的权限,即:

Oralce新建数据库、新建远程登录用户全过程的更多相关文章
- 安装xampp之后如何建立远程登录用户并修改登录方式和密码
其实xampp作为开发环是非常好用的,但是很少人将其用作生产环境,主要还是它的安全性较低,很多默认设置都存在安全漏洞,但是实际上使用xampp在Linux下面进行配置确实是很节省时间的一件事(如果你的 ...
- MySQL 查询 存储过程 视图 触发器 函数 索引 建表语句 数据库版本 当前登录用户 当前数据库名称
MySQL 查询 存储过程 视图 触发器 函数 索引 建表语句 数据库版本 当前登录用户 当前数据库名称 INFORMATION_SCHEMA.TABLES INFORMATION_SCHEMA. ...
- YII学习,实现基于数据库的后台登录,用户体系.
上次研究Yii框架写到了要完成用户登陆系统.这次接着上次的写. 参考官方权威指南和参考手册,外加各种博客文章.历尽千辛万苦,数遍天上滴星星.完成了后台用户登录.这里用到了YII框架的 CUserIde ...
- 限制SSH远程登录用户仅能只读访问Linux中指定的目录
资料参考:http://os.51cto.com/art/201703/534895.htm 背景需求: 在TOMCAT服务器上建立一个普通帐号log_user,只能查看TOMCAT日志,不能删改任何 ...
- 【浅层优化实战】ssh远程登录Linux卡慢的全过程排查及解决方案
ssh远程登录Linux卡慢的全过程排查及解决方案 前言: 在linux操作系统使用过程中偶然一次感到使用ssh远程连接软件连接操作系统需要等待许久,第一次没在意,第二次也没在意,第三次有点忍受不住了 ...
- Windows 10 多用户同时远程登录
win服务器版默认是支持多用户登陆的,甚至可以在主机上用不同用户自己远程登陆自己,如window server 2016. Win10 正常情况下是不允许用户同时远程的,即一个用户远程进来会把另一个用 ...
- 傻瓜式教学--win10 + frp + rdpwrap + 阿里云服务器 --实现win10 多用户同时远程登录内网机
概述: 使用win10 专业版 + frp + RDPwrap + 阿里云服务器 的组合实现win10 多用户同时远程登录内网机.使用frp 做内网穿透,将内网机的指定端口暴露在外网,通过ip+por ...
- “通过jumpserver远程登录linux服务器,rz上传文件速度过慢”问题的解决
问题: windows通过jumpserver远程登录到linux服务器,使用rz上传jar包,速度太慢(10k以内). 解决方案: 思路:通过ssh直接登录远程服务器 1.secureCRT-> ...
- CentOS7安装MySQL并允许远程登录
下载 mysql 源安装包 $ curl -LO http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm 安装 mys ...
随机推荐
- html table 知识点
第一点就是图片在表格中不能对齐边沿的问题,这是和浏览器的渲染模式相关的,在标准模式中是不能对齐的,除非改变CSS某些样式.而在准标准模式和怪异模式中,默认就是对齐的. 这一特性在以前的表格布局时代是大 ...
- birt报表中使用多个数据集。
这个问题困扰了几天,也没搜到答案,由于工作需要,创建了两个数据集和两个表格,第一个数据集和表格之间没有任何问题.但是第二个数据集拖过去就显示不可用,除非拖到表格外面,当然也就没用了.一朋友说拖一个网格 ...
- iOS开发中EXC_BAD_ACCESS的另类原因
今天偶然学习iOS开发的时候碰到一个EXC_BAD_ACCESS的异常,经查资料得到的解释是由于访问了已经被回收了堆内存对象导致的,参考: http://code.tutsplus.com/tutor ...
- SpringMVC简单搭建与入门
SpringMVC框架是spring框架的一个模块.springmvc和spring无需要通过中间整合层进行整合. 学习的时候,先了解一下流程至关重要,下面,简单介绍一下流程. 源码下载:http:/ ...
- 你好,C++(36)人参再好,也不能当饭吃!6.3 类是如何面向对象的
6.3 类是如何面向对象的 类作为C++与面向对象思想结合的产物,作为面向对象思想在C++中的载体,它的身上流淌着面向对象的血液.从类成员的构成到类之间的继承关系再到虚函数,到处都体现着面向对象封装 ...
- Kohana框架ORM类的基本使用
1.首先需要创建一个模型类,以user为例,在application/classes/model/user.php路径下创建user.php,并且一个表对应一个模型,且表名必须在类名后加“S”,即表名 ...
- c语言Winpcap编程构造并接收解析arp包
/* 程序功能: 1.构造arp包,并发送.程序参数顺序:源IP.目的IP.mac地址.flag 2.获取网络中的ARP数据包,解析数据包的内容.程序参数:日志文件名 winpacp中文技术文档(基本 ...
- PIL Image 转成 wx.Image、wx.Bitmap
import wx from PIL import Image def ConvertToWxImage(): pilImage = Image.open('1.png') image = wx.Em ...
- linux c redirect 重定向
用execvp实现时,运行adb,如果adb 服务没有启动,会启动adb服务,启动adb服务时,pipe返回的管道在读的时候堵塞了. 查看了popen的源码,发现popen是用sh -c来执行的,避免 ...
- android防止系统截屏
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); getWindow() ...