CentOS 7安装Oracle 11gR2以及设置自启动(2)
6、创建表空间和用户授权
(1)、连接数据库
$ sqlplus / as sysdba
(2)、创建数据库表空间
- 语法:
- create tablespace 表空间名
- datafile ‘物理地址(相当于文件路径)’
- size初始大小(单位M)
- autoextend on next每次自增的大小(单位M)
- maxsize unlimited (此关键字用于不限制表空间大小)
SQL> create tablespace test1_teblespace
datafile '/usr/oracle/oradata/orcl/test1_teblespace.dbf'
size 500M
autoextend on next 100M
maxsize unlimited;
(3)、创建用户并指定表空间
- 语法:
- create user 用户名 identified by 口令[即密码] default tablespace 表空间名;
SQL> create user test1 identified by test1 default tablespace test1_teblespace;
(4)、给用户授予权限
- 语法:
- grant 权限1, 权限2, 权限3…… to 用户名
SQL> grant connect,resource,dba to test1;
(5)、删除表空间
- 语法:
- drop tablespace 表空间名 including contents and datafiles cascade constraints;
SQL> drop tablespace test1_teblespace including contents and datafiles cascade constraints;
- including contents 删除表空间中的内容,如果删除表空间之前表空间中有内容,而未加此参数,表空间无法删除。
- including datafiles 删除表空间中的数据文件
- cascade constraints 同时删除表空间中表的外键参照
(6)、删除用户
- 语法:
- drop user 用户名 cascade;
- 最后这个级联特别有用(删除用户以及所有关联的数据库对象)
SQL> drop user test1 cascade;
四、 设置数据库自启动
方法一:
1、安装好Oracle数据库后: 执行 dbstart和dbshut
$ dbshut
$ dbstart
错误原因:dbstart和dbshut脚本文件中ORACLE_HOME_LISTNER的设置有问题
分别打开两个文件修改如下内容
- ORACLE_HOME_LISTNER=$
- 修改为:
- ORACLE_HOME_LISTNER=$ORACLE_HOME
$ vim $ORACLE_HOME/bin/dbstart
$ vi $ORACLE_HOME/bin/dbshut
修改后保存退出,问题解决
2、Linux启动时自动启动Oracle监听和实例
第一步:修改/etc/oratab文件
- 找到: orcl:/usr/oracle/product/11.2./db_1:N
- 修改为: orcl:/usr/oracle/product/11.2./db_1:Y
- (这个路径跟安装路径有关,$ORACLE_SID:$ORACLE_HOME:<N|Y>)
$ vi /etc/oratab
第二步:把lsnrctl start和dbstart添加到rc.local文件中:
root权限执行
# vi /etc/rc.d/rc.local
添加:
- su - oracle -lc "/usr/oracle/product/11.2.0/db_1/bin/lsnrctl start"
- su - oracle -lc "/usr/oracle/product/11.2.0/db_1/bin/dbstart"
说明:
第一行为开机启动数据库监听服务,第二行为开机启动数据库。(路径跟安装路径相关)。
注意:CentOs7中/etc/rc.d/rc.local不会开机执行,需添加执行权限。
查看/etc/rc.d/rc.local的权限
# ll /etc/rc.d/rc.local
添加执行权限
# chmod +x /etc/rc.d/rc.local
3、重启电脑后查看是否自启动成功
# reboot
查看监听是否自启动成功
$ lsnrctl status LISTENER
查看Oracle服务状态
$ ps -aux | grep oracle
4、oracle的启动或关闭管理
启动
$ dbstart
关闭
$ dbshut
方法二:
1、修改/etc/oratab文件
- 找到: orcl:/usr/oracle/product/11.2./db_1:N
- 修改为: orcl:/usr/oracle/product/11.2./db_1:Y
- (这个路径跟安装路径有关,$ORACLE_SID:$ORACLE_HOME:<N|Y>)
2、新建oracle自启动服务脚本
- [root@localhost oracle]# vi /etc/init.d/oracle
将以下脚本复制到文件中,保存退出(:wq)
- #!/bin/sh
- # chkconfig:
- # description: Oracle 11g R2 AutoRun Servimces
- # /etc/init.d/oracle
- #
- # Run-level Startup script for the Oracle Instance, Listener, and
- # Web Interface
- export ORACLE_BASE=/usr/oracle #oracle安装位置
- export ORACLE_HOME=$ORACLE_BASE/product/11.2./db_1 #Oracle安装路径
- export ORACLE_SID=orcl
- export PATH=$PATH:$ORACLE_HOME/bin
- ORA_OWNR="oracle"
- # if the executables do not exist -- display error
- if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]
- then
- echo "Oracle startup: cannot start"
- exit
- fi
- # depending on parameter -- startup, shutdown, restart
- # of the instance and listener or usage display
- case "$1" in
- start)
- # Oracle listener and instance startup
- su $ORA_OWNR -lc $ORACLE_HOME/bin/dbstart
- echo "Oracle Start Succesful!OK."
- ;;
- stop)
- # Oracle listener and instance shutdown
- su $ORA_OWNR -lc $ORACLE_HOME/bin/dbshut
- echo "Oracle Stop Succesful!OK."
- ;;
- reload|restart)
- $ stop
- $ start
- ;;
- *)
- echo $"Usage: `basename $0` {start|stop|reload|reload}"
- exit
- esac
- exit
3、检查脚本能否执行
- [root@localhost oracle]# /etc/init.d/oracle start #启动oracle脚本
- [root@localhost oracle]# /etc/init.d/oracle stop #关闭oracle脚本
- [root@localhost oracle]# /etc/init.d/oracle restart #重启oracle脚本
4、添加执行权限并建立链接
更改oracle脚本的执行权限
- [root@localhost oracle]# chmod a+x /etc/init.d/oracle
建立链接
将启动脚本添加到系统服务并设置自启动
- [root@localhost oracle]# chkconfig --add oracle
当这个命令被执行的时候,会去脚本文件oracle中寻找# chkconfig: 2345 61 61这行注释,并解析这行注释,根据解析结果分别在
/etc/rc.d/rc2.d
/etc/rc.d/rc3.d
/etc/rc.d/rc4.d
/etc/rc.d/rc5.d
中创建符号连接文件S61oracle,此文件在系统启动时根据运行级别执行,此文件是指向/etc/init.d/oracle文件。启动时系统向此文件发送一个start参数,执行oracle文件中的start分支。另外还会在
/etc/rc.d/rc0.d
/etc/rc.d/rc1.d
/etc/rc.d/rc6.d
中创建符号连接文件K61oracle,此文件在系统关闭时执行,此文件也指向/etc/init.d/oracle文件,关闭时系统向此文件发送一个stop参数,执行oracle文件中的stop分支。
# chkconfig: 2345 61 61
# 表明脚本应该在运行级 2, 3, 4, 5 启动,启动优先权为61,停止优先权为 61。
修改服务运行等级(虽然脚本里写过,但还是重新设置一下),可以自行设置oracle脚本的运行级别
- [root@localhost oracle]# chkconfig --level oracle on
说明:设置oracle脚本在运行级别为2、3、4、5时,都是on(开启)状态,off为关闭
查看oracle自动启动设置
- [root@localhost oracle]# chkconfig –list oracle
- Oracle :off :off :on :on :on :on :off
- 等级0表示:表示关机
- 等级1表示:单用户模式
- 等级2表示:无网络连接的多用户命令行模式
- 等级3表示:有网络连接的多用户命令行模式
- 等级4表示:不可用
- 等级5表示:带图形界面的多用户模式
- 等级6表示:重新启动
手动创建符号链接文件(执行效果和执行chkconfig --add oracle是一样,作为知识笔记记录,可以不执行)
- [root@localhost oracle]# ln –s /etc/rc.d/init.d/oracle /etc/rc0.d/K61oracle
- [root@localhost oracle]# ln –s /etc/rc.d/init.d/oracle /etc/rc1.d/K61oracle
- [root@localhost oracle]# ln –s /etc/rc.d/init.d/oracle /etc/rc2.d/S61oracle
- [root@localhost oracle]# ln –s /etc/rc.d/init.d/oracle /etc/rc3.d/S61oracle
- [root@localhost oracle]# ln –s /etc/rc.d/init.d/oracle /etc/rc4.d/S61oracle
- [root@localhost oracle]# ln –s /etc/rc.d/init.d/oracle /etc/rc5.d/S61oracle
- [root@localhost oracle]# ln –s /etc/rc.d/init.d/oracle /etc/rc6.d/K61oracle
5、oracle的启动或关闭管理
- 启动
- [root@localhost oracle]# service oracle start
- 停止
- [root@localhost oracle]# service oracle stop
- 重启
- [root@localhost oracle]# service oracle restart
五、数据库字符集修改
注意事项:修改字符集前先将数据库进行备份
此处演示将ZHS16GBK字符集修改为AL32UTF8
1、修改server端字符集
登录sqlpus查看字符集设置
- [oracle@localhost ~]$ sqlplus /nolog
- SQL*Plus: Release 11.2.0.1. Production on Wed Jan ::
- Copyright (c) , , Oracle. All rights reserved.
- SQL> conn /as sysdba
- Connected to an idle instance. #数据库未启动,先启动数据库。最好将数据库设未开机启动
- SQL> startup
- SQL> conn /as sysdba
- Connected. #连接成功
- SQL> select userenv('language') from dual; #server端字符集查询
- USERENV('LANGUAGE')
- ----------------------------------------------------
- AMERICAN_AMERICA.ZHS16GBK
依次执行如下命令
- SQL>SHUTDOWN IMMEDIATE;
- SQL>STARTUP MOUNT;
- SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION;
- SQL>ALTER SYSTEM SET JOB_QUEUE_PROCESSES=;
- SQL>ALTER SYSTEM SET AQ_TM_PROCESSES=;
- SQL>ALTER DATABASE OPEN;
- SQL>ALTER DATABASE CHARACTER SET INTERNAL_USE AL32UTF8;
- SQL>SHUTDOWN IMMEDIATE;
- SQL>STARTUP;
- SQL> select userenv('language') from dual;
- USERENV('LANGUAGE')
- ----------------------------------------------------
- AMERICAN_AMERICA.AL32UTF8
- SQL>
2、修改client端字符集
查看系统环境变量设置的字符集(client端字符集)
- [oracle@localhost ~]$ cat /home/oracle/.bash_profile
- ...
- PATH=$PATH:$HOME/.local/bin:$HOME/bin
- export PATH
- export ORACLE_BASE=/usr/oracle
- export ORACLE_HOME=$ORACLE_BASE/product/11.2./db_1
- export ORACLE_SID=orcl
- export ORACLE_TERM=xterm
- export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH
- export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
- export LANG=C
- export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK #客户端字符集
- 进入编辑界面,将ZHS16GBK改为AL32UTF8,保存退出
- [oracle@localhost ~]$ vim /home/oracle/.bash_profile
- 使配置生效
- [oracle@localhost ~]$ source /home/oracle/.bash_profile
修改完成
参考博客
CentOS 7安装Oracle 11gR2以及设置自启动
https://www.cnblogs.com/VoiceOfDreams/p/8308601.html
CentOS 7安装Oracle 11gR2以及设置自启动(2)的更多相关文章
- CentOS 7安装Oracle 11gR2以及设置自启动(1)
一.环境准备 1.正确无误的CentOS 7系统环境 虚拟机要求: 内存至少2G 处理器至少2个 根分区要大于20G(安装oracle很占空间,空闲空间要足够) 2.正确的JDK环境 CentOS 7 ...
- CentOS 7安装Oracle 11gR2以及设置自启动
一.环境准备 1.正确无误的CentOS 7系统环境 CentOS 7安装:http://www.cnblogs.com/VoiceOfDreams/p/8043958.html 2.正确的JDK环境 ...
- CentOS 7 安装Oracle 11gR2
概述 Oracle 在Linux和window上的安装不太一样,公司又是Linux系统上的Oracle,实在没辙,研究下Linux下Oracle的使用,oracle默认不支持CentOS系统安装,所以 ...
- CentOS静默安装Oracle 11gR2(x64)
环境 OS: CentOS 7.4; hosts: L134; IP: 192.168.1.134 DB: linux.x64_11gR2_database 安装依赖包 yum install -y ...
- CentOS 6安装Oracle 11gR2数据库
1.安装环境--- 操作系统:CentOS release 6.8 (Final) oracle:Oracle Database 11g Enterprise Edition Release 11.2 ...
- Centos 6下安装Oracle 11gR2
一.安装环境 CentOS release 6.7 (Final) Oracle Database 11g Release 2 二.安装前准备 #修改主机名 修改/etc/sysconfig/netw ...
- CentOS 7 安装 Oracle 11.2.0.4
一.安装环境 CentOS Linux release 7.2.1511 (Core) Oracle Database 11g Release 2 (11.2.0.4) 二.安装前准备 2.1 修改主 ...
- CentOS 7 之安装 Oracle 11gR2
一.准备工作 1.下载Oracle安装包:linux.x64_11gR2_database_1of2.zip 和 linux.x64_11gR2_database_2of2.zip ,可以下载到本地, ...
- CentOS安装Oracle 11gR2(x64)
本文主要步骤是参考:https://www.linuxidc.com/Linux/2014-02/97374.htm 后来自己加入了一些安装过程中遇到的问题和解决方法.使用图形界面安装Oracle已经 ...
随机推荐
- vue全家桶+Koa2开发笔记(7)--登陆注册功能
1 文件结构:pages中放置页面代码:server 分为 dbs 和interface两个文件夹: dbs设置有关数据库的代码:interface设置接口信息: 2.2 先看dbs的,在dbs的配置 ...
- 深入浅出Node.js---Connect模块解析 。转载
文章地址:https://blog.csdn.net/zhangyuan19880606/article/details/51509205 1 Connect模块背景 Node.js的愿望是成为一个能 ...
- 浮动IP(FLOAT IP)
主要谈一谈关于浮动IP的东西,介绍下浮动IP是什么 1.为什么要有浮动IP这个东西 现在有一个场景,在一台Linux上部署一个web应用,应用跑在tomcat里面,linux网卡上的ip是 ...
- protobuf GetExtension
get extention values from proto file value, err := proto.GetExtension(imp, openrtb.E_Imp) if err != ...
- sqler sql 转rest api redis 接口使用
sqler 支持redis 协议,我们可以用过redis client 连接sqler,他会将宏住转换为redis command 实现上看源码我们发现是基于一个开源的redis 协议的golang ...
- gitingore && opensource license 自动生成的网站
老外就是爱搞事情,总有一些方便我们开发的小工具出来,比如gitignore以及开源软件许可协议的 gitingore 生成的 地址 https://www.gitignore.io/ 使用 搜索的地方 ...
- oracle-sql分析练习
http://blog.chinaunix.net/uid-13552913-id-3028644.html Oracle 修改字段顺序的两种方法 一 如果要修改字段顺序,一般情况可以使用以下步骤: ...
- 我发起了一个 用 物理服务器 和 .Net 平台 构建云平台 的 .Net 开源项目
大家好 , 我发起了一个 用 物理服务器 和 .Net 平台 构建云平台 的 .Net 开源项目 . 对 , 用 物理服务器 和 .Net 平台 构建 云平台 . 通过 .Net 构建 分布式 计算集 ...
- elasticsearch 镜像使用
elasticsearch 镜像使用 下载镜像: docker pull elasticsearch:6.5.4 创建容器: docker run -it -p 9200:9200 -p 9300:9 ...
- struts2+dojo实现datagrid动态刷新
实现一个普通的数据库查询功能,参考了这个帖子:http://stackoverflow.com/questions/5499453/how-to-refresh-datagrid 需要注意的是动态创建 ...