Linux安装Oracle11g数据库,并创建数据库表空间、用户及表(VMware)

2023-12-23 11:18

本文主要是介绍Linux安装Oracle11g数据库,并创建数据库表空间、用户及表(VMware),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

大纲

 

1. 安装环境及Oracle11g安装包。
2. 创建用户组及用户。
3. 安装Oracle必需的包,并检查是否仍有缺少。
4. 修改操作系统核心参数。
5. 配置oracle用户的环境变量,为第6步做准备。
6. 解压Oracle安装包,进行安装。
7. 启动Oracle服务与监听。
8. 创建表空间、用户、表。

1. 环境及Oracle11g安装包

1.1 Linux系统:rhel-server-6.8-x86_64(桌面版)
1.2 Oracle11g安装包:linux.x64_11gR2_database_1of2.zip、linux.x64_11gR2_database_2of2.zip

2. 创建用户组及用户。(root权限下)

2.1 创建用户组,输入命令:

groupadd oinstall 
groupadd dba

2.2 创建Oracle用户和密码,输入命令:  

useradd -g oinstall -g dba -m oracle
passwd oracle

3. 安装Oracle必需的包,并安装缺少的包。(root权限下)

3.1 以下命令执行顺序不可颠倒!安装包可从Linux镜像文件中的Packages目录下获取,版本号可能不一致。

rpm -ivh glibc-common-2.12-1.25.el6.x86_64.rpm
rpm -ivh kernel-headers-2.6.32-131.0.15.el6.x86_64.rpm
rpm -ivh libgcc-4.4.5-6.el6.x86_64.rpm
rpm -ivh glibc-2.12-1.25.el6.x86_64.rpm
rpm -ivh libgomp-4.4.5-6.el6.x86_64.rpm
rpm -ivh nscd-2.12-1.25.el6.x86_64.rpm
rpm -ivh glibc-headers-2.12-1.25.el6.x86_64.rpm
rpm -ivh glibc-devel-2.12-1.25.el6.x86_64.rpm
rpm -ivh mpfr-2.4.1-6.el6.x86_64.rpm
rpm -ivh ppl-0.10.2-11.el6.x86_64.rpm
rpm -ivh cloog-ppl-0.15.7-1.2.el6.x86_64.rpm
rpm -ivh cpp-4.4.5-6.el6.x86_64.rpm
rpm -ivh gcc-4.4.5-6.el6.x86_64.rpm

3.2 安装完成之后,执行命令检查是否所需包已全部安装

rpm -q binutils compat-libstdc++ elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers kernel-headers ksh libaio libaio-devel libgcc libgomp libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel

3.3 检查之后发现还有4个包没有安装,所以从Linux镜像文件中的Packages目录下获取进行安装,并再次进行检查。

3.4 发现还有一个“compat-libstdc”包没有(其实还有一个elfutils-libelf-devel-static包显示没有,但是我没有在iso文件中找到,最后Oracle也安装成功了,特此说明),但是我确认已经安装了,最后发现原因是检查命令不对,命令应该为:

rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers kernel-headers ksh libaio libaio-devel libgcc libgomp libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel

3.5 另附查询指定包是否存在的命令:

rpm -qa | grep "compat-libstdc"

4. 修改操作系统核心参数。(root权限下)

4.1 vi /etc/security/limits.conf (资源限制配置文件),新增如下代码:

oracle soft nproc  2047
oracle hard nproc  16384
oracle soft nofile 1024
oracle hard nofile 65536

4.2 vi /etc/pam.d/login (登陆配置文件),新增如下代码:

session    required     pam_limits.so

4.3 vi /etc/profile (全局变量文件),新增如下代码:

if [ $USER = "oracle" ]; thenif [ $SHELL = "/bin/ksh" ]; thenulimit -p 16384ulimit -n 65536elseulimit -u 16384 -n 65536fi
fi

5. 配置oracle用户的环境变量,为第6步做准备。(oracle用户下)

5.1 创建oracle相关目录

mkdir /home/oracle/app
mkdir /home/oracle/app/oracle
mkdir /home/oracle/app/oradata
mkdir /home/oracle/app/oracle/product

5.2 vi .bash_profile(用户环境变量文件),新增如下内容

export ORACLE_BASE=/home/oracle/app
export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/dbhome_1
export ORACLE_SID=orcl
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib

6. 解压Oracle安装包,进行安装。(oracle用户下)

6.0 运行Oracle安装执行程序:

./runInstaller

6.1 第1步,用来配置更新以及技术支持的,把勾去掉直接下一步就行。

有警告,点击“yes”即可。

6.2 第2步,这三个选项分别表示:①创建并配置一个新数据库,适用于新安装数据库的用户;②只安装数据库软件,适用于已有Oracle数据库数据用于数据迁移的;③升级已有数据库,适用于将老数据库升级成新数据库的用户。这里我们选择第1个选项:

6.3 第3步,配置桌面版还是服务器版,桌面版是最小化配置。这里我们选择服务器版的配置。

6.4 第4步,分布式网格配置,这里我们选择单实例服务器配置。

6.5 第5步,分为典型安装和高级安装,这里我们选择高级安装。

6.6 第6步,选择语言,这里我们选择英文和简体中文。

6.7 第7步,选择数据库版本,这里我们选择企业版。

6.8 第8步,选择安装路径,这个已经在上面的5.2配置oracle用户环境变量中配置过了,直接下一步。

6.9 第9步,这个Inventory Directory目录用于记录Oracle的清单信息的,清单信息中包括Oracle的安装路径等信息。这里我们选择默认的路径,即oracle用户家目录下的一个oraInventory目录。

6.10 第10步,用于创建数据库的类型:通用/事务处理(专为一般用途或交互较多的应用程序而设计);数据仓库(对数据存储应用程序进行优化)。这里我们选择通用。

6.11 第11步,配置数据库名和Oracle服务ID号,这里我们使用默认的orcl。(注意数据库名一定要记住,以后进行程序开发会用到这个数据库名)

6.12 第12步,配置字符集,将字符集设置成UTF-8,其他的不用修改。

6.13 第13步,配置系统信息邮件通知的,可以跳过,直接下一步。

6.14 第14步,配置数据存储的(数据文件存储位置),由于在上面“5. 配置oracle用户的环境变量”中已经配置好了,直接下一步即可。

6.15 第15步,配置数据备份,这里我们只是用来学习不需要自动备份,实际生产肯定是要做备份的。

6.16 第16步,配置账号密码,这里我将所有的默认用户统一使用相同的密码。

6.17 第17步,配置数据库用户组的,由于在上面“2. 创建用户组及用户”中已经配置好了,直接下一步即可。

6.18 第18步,会检测交换分区大小、内核参数以及依赖包是否安装。只要前面准备工作都完成了,下面的错误可以直接忽略(比如它要求的软件包,我们的版本实际上比它要求的还高,所以这里的报错没必要理会它)。

6.19 第19步,对前面所有配置的一个总结,我们可以直接点击完成。

6.20 第20步,最终的配置信息确认。

6.21 第21步,这里提示需要使用root用户手动运行两个脚本,参考第22步,执行脚本成功之后返回页面点击OK。

6.22 第22步,root权限下执行两个脚本,执行脚本成功之后返回安装页面点击OK。

6.23 第23步,提示oracle安装成功。

6.24 第24步,简单的验证:在oracle用户下,进入sqlplus,使用sys as sysdba 登录,解锁scott用户,查询表数据。

7. 启动Oracle服务与监听。(oracle用户下)

7.1 启Oracle服务:

sqlplus /nolog
conn sys/123456 as sysdba
shutdown immediate
startup

7.2 启动监听(才能使用数据库管理工具连接):

lsnrctl status 	(查看监听状态)
lsnrctl stop	(关闭监听)
lsnrctl start	(启动监听)

7.3 遇到的问题:本地连接虚拟机中Oracle数据库失败。

原因之一:本地telnet虚拟机Oracle地址不通,是防火墙没有关闭1521端口,可使用如下命令将1521端口设置为白名单(),编辑防火墙配置文件:

sudo vi /etc/sysconfig/iptables
-A INPUT -p tcp -m state --state NEW -m tcp --dport 1521 -j ACCEPT

一定要将上述代码写在reject之前,不然会不起作用的

文件修改完成之后,执行如下命令,生效防火墙:

sudo service iptables restart
sudo service iptables save
sudo iptables -L -n

8. 创建表空间、用户、表

8.1 创建表空间data_space_hhh,指定存储文件及路径/home/oracle/app/oradata/orcl/usersHhh01.dbf,表空间大小360M(sys用户下)

create tablespace data_space_hhh datafile '/home/oracle/app/oradata/orcl/usersHhh01.dbf' size 360M;

8.2 创建用户hhh并指定默认表空间data_space_hhh(sys用户下)

create user hhh identified by tiger default tablespace data_space_hhh;

8.3 赋予普通用户权限给用户hhh(sys用户下)

grant connect,resource to hhh;

DBA: 拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。
RESOURCE:拥有Resource权限的用户只可以创建实体,不可以创建数据库结构。
CONNECT:拥有Connect权限的用户只可以登录Oracle,不可以创建实体,不可以创建数据库结构。
对于普通用户:授予connect, resource权限。
对于DBA管理用户:授予connect,resource, dba权限。

8.4 创建student表(hhh用户下)

conn hhh/tiger
create table student(name varchar2(16) primary key,sex  number(1),age  number(3),class number(2),address varchar2(64)
)tablespace data_space_hhh;

8.5 创建表成功之后,别忘了执行提交命令

commit;

8.6 相关查询、删除语句

--查看-表空间文件路径
select name from v$datafile;--查看-表空间大小
select tablespace_name, file_id, sum(bytes)/1024/1024"(M)" from dba_data_files group by tablespace_name, file_id
ORDER BY file_id;--查看-你能管理的所有用户
select * from all_users order by CREATED;--查看-数据库里面所有用户(dba权限)
select USERNAME from dba_users;--查看-当前登录用户的所有表
select table_name from user_tables;--删除-非空表空间data_space_hhh,包含物理文件
drop tablespace data_space_hhh including contents and datafiles;--删除-这个用户hhh以及这个用户下的所有对象
drop user hhh cascade;--修改-hhh用户密码为123456
alter user hhh identified by 123456

参考资料

1. Linux系统安装Oracle11g完整安装图文教程

2. Linux下安装oracle11g

3. Linux上安装Oracle的辛酸史

4. Linux老是提示compat-libstdc++ is not installed的原因

5. Oracle权限管理详解

6. 用sqlplus为oracle创建用户和表空间

7. drop user和drop user cascade的区别

8. Oracle创建表空间和表

9. oracle 删除表空间及数据文件方法

10. oracle查询当前用户名下所有表

最后,谢谢各位读者的耐心阅读,如有语句不通顺或者不准确的地方,大家也可以提提改善的意见!(^__^)

这篇关于Linux安装Oracle11g数据库,并创建数据库表空间、用户及表(VMware)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/527839

相关文章

Python调用Orator ORM进行数据库操作

《Python调用OratorORM进行数据库操作》OratorORM是一个功能丰富且灵活的PythonORM库,旨在简化数据库操作,它支持多种数据库并提供了简洁且直观的API,下面我们就... 目录Orator ORM 主要特点安装使用示例总结Orator ORM 是一个功能丰富且灵活的 python O

Python使用国内镜像加速pip安装的方法讲解

《Python使用国内镜像加速pip安装的方法讲解》在Python开发中,pip是一个非常重要的工具,用于安装和管理Python的第三方库,然而,在国内使用pip安装依赖时,往往会因为网络问题而导致速... 目录一、pip 工具简介1. 什么是 pip?2. 什么是 -i 参数?二、国内镜像源的选择三、如何

Linux使用nload监控网络流量的方法

《Linux使用nload监控网络流量的方法》Linux中的nload命令是一个用于实时监控网络流量的工具,它提供了传入和传出流量的可视化表示,帮助用户一目了然地了解网络活动,本文给大家介绍了Linu... 目录简介安装示例用法基础用法指定网络接口限制显示特定流量类型指定刷新率设置流量速率的显示单位监控多个

ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法

《ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法》本文介绍了Elasticsearch的基本概念,包括文档和字段、索引和映射,还详细描述了如何通过Docker... 目录1、ElasticSearch概念2、ElasticSearch、Kibana和IK分词器部署

Linux流媒体服务器部署流程

《Linux流媒体服务器部署流程》文章详细介绍了流媒体服务器的部署步骤,包括更新系统、安装依赖组件、编译安装Nginx和RTMP模块、配置Nginx和FFmpeg,以及测试流媒体服务器的搭建... 目录流媒体服务器部署部署安装1.更新系统2.安装依赖组件3.解压4.编译安装(添加RTMP和openssl模块

Android 悬浮窗开发示例((动态权限请求 | 前台服务和通知 | 悬浮窗创建 )

《Android悬浮窗开发示例((动态权限请求|前台服务和通知|悬浮窗创建)》本文介绍了Android悬浮窗的实现效果,包括动态权限请求、前台服务和通知的使用,悬浮窗权限需要动态申请并引导... 目录一、悬浮窗 动态权限请求1、动态请求权限2、悬浮窗权限说明3、检查动态权限4、申请动态权限5、权限设置完毕后

linux下多个硬盘划分到同一挂载点问题

《linux下多个硬盘划分到同一挂载点问题》在Linux系统中,将多个硬盘划分到同一挂载点需要通过逻辑卷管理(LVM)来实现,首先,需要将物理存储设备(如硬盘分区)创建为物理卷,然后,将这些物理卷组成... 目录linux下多个硬盘划分到同一挂载点需要明确的几个概念硬盘插上默认的是非lvm总结Linux下多

使用 sql-research-assistant进行 SQL 数据库研究的实战指南(代码实现演示)

《使用sql-research-assistant进行SQL数据库研究的实战指南(代码实现演示)》本文介绍了sql-research-assistant工具,该工具基于LangChain框架,集... 目录技术背景介绍核心原理解析代码实现演示安装和配置项目集成LangSmith 配置(可选)启动服务应用场景

Python安装时常见报错以及解决方案

《Python安装时常见报错以及解决方案》:本文主要介绍在安装Python、配置环境变量、使用pip以及运行Python脚本时常见的错误及其解决方案,文中介绍的非常详细,需要的朋友可以参考下... 目录一、安装 python 时常见报错及解决方案(一)安装包下载失败(二)权限不足二、配置环境变量时常见报错及

TP-Link PDDNS服将于务6月30日正式停运:用户需转向第三方DDNS服务

《TP-LinkPDDNS服将于务6月30日正式停运:用户需转向第三方DDNS服务》近期,路由器制造巨头普联(TP-Link)在用户群体中引发了一系列重要变动,上个月,公司发出了一则通知,明确要求所... 路由器厂商普联(TP-Link)上个月发布公告要求所有用户必须完成实名认证后才能继续使用普联提供的 D