当前位置: 首页 > article >正文

Oracle手工创建数据库和多环境变量下如何连接指定的数据库

Oracle手工创建数据库(hefeidb)

Oracle创建数据库的方法有三种:dbca、静默方式、手工建库三种方法,这里演示手工建库的方式,适用在不能运行dbca的环境下面创建库:

1设置环境变量(新增一个)

su - oracle

cd /home/oracle

cp .bash_profile .bash_profile.fgzcdb

vi .bash_profile

if [ -f ~/.bashrc ]; then 
. ~/.bashrc 
fi 
PATH=$PATH:$HOME/bin 
export PATH 
 
export ORACLE_BASE=/oracle/app/oracle 
export ORACLE_HOME=$ORACLE_BASE/product/19c/db_1 
export PATH=$ORACLE_HOME/bin:$PATH 
export ORACLE_UNQNAME=hefeidb 
export ORACLE_SID=hefeidb 
source .bash_profile 
env |grep ORACLE 

创建pfile文件audit_file_dest审计目录

cd $ORACLE_HOME/dbs

复制模板文件 init.ora

vi inithefeidb.ora

db_name='hefeidb' 
sga_max_size=2G 
processes = 2000 
audit_file_dest='/oracle/app/oracle/admin/hefeidb/adump' 
audit_trail ='db' 
db_block_size=8192 
db_domain='' 
db_recovery_file_dest='/oracle/app/oracle/fast_recovery_area' 
db_recovery_file_dest_size=2G 
diagnostic_dest='/oracle/app/oracle' 
dispatchers='(PROTOCOL=TCP) (SERVICE=FGEDUDBXDB)' 
open_cursors=2000 
remote_login_passwordfile='EXCLUSIVE'
undo_tablespace='UNDOTBS1' 
# You may want to ensure that control files are created on separate physical 
# devices 
control_files = (/oradata/hefeidb/control01.ctl, /oradata/hefeidb/control02.ctl) 
compatible ='11.2.0'

根据上面的pfile创建目录

mkdir -p /oracle/app/oracle/admin/hefeidb/adump

mkdir -p /oradata/hefeidb

mkdir -p /oracle/app/oracle/fast_recovery_area

orapwd创建密码文件

cd $ORACLE_HOME/dbs 
orapwd file=orapwhefeidb password=hefei-2024

创建pfile并启动到nomount

cd $ORACLE_HOME/dbs

sqlplus "/as sysdba" 
create spfile from pfile; 
startup nomount; 

#报错:ORA-27125:unable to create shared memory segment
##解决:vi /etc/sysctl.conf,增加shmmax和shmall两个参数的大小,使用sysctl -p 生效。

执行建库脚本

#vi createdb.sql

CREATE DATABASE hefeidb 
USER SYS IDENTIFIED BY oracle 
USER SYSTEM IDENTIFIED BY oracle 
LOGFILE GROUP 1 ('/oradata/hefeidb/redo01a.log') SIZE 50M BLOCKSIZE 512, 
GROUP 2 ('/oradata/hefeidb/redo02a.log') SIZE 50M BLOCKSIZE 512, 
GROUP 3 ('/oradata/hefeidb/redo03a.log') SIZE 50M BLOCKSIZE 512 
MAXLOGHISTORY 1 
MAXLOGFILES 16 
MAXLOGMEMBERS 3 
MAXDATAFILES 8192 
CHARACTER SET ZHS16GBK 
NATIONAL CHARACTER SET AL16UTF16 
EXTENT MANAGEMENT LOCAL 
DATAFILE '/oradata/hefeidb/system01.dbf' 
SIZE 700M REUSE AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED 
SYSAUX DATAFILE '/oradata/hefeidb/sysaux01.dbf' 
SIZE 550M REUSE AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED 
DEFAULT TABLESPACE users 
DATAFILE '/oradata/hefeidb/users01.dbf' 
SIZE 100M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED 
DEFAULT TEMPORARY TABLESPACE temp 
TEMPFILE '/oradata/hefeidb/temp01.dbf' 
SIZE 20M REUSE AUTOEXTEND ON NEXT 640K MAXSIZE UNLIMITED
UNDO TABLESPACE undotbs1 
DATAFILE '/oradata/hefeidb/undotbs01.dbf' 
SIZE 200M REUSE AUTOEXTEND ON NEXT 5120K MAXSIZE UNLIMITED; 

@createdb.sql 

#执行CREATE DATABASE语句时,Oracle数据库至少执行以下操作:
#为数据库创建数据文件为数据库创建控制文件
#为数据库创建在线重做日志并建立ARCHIVELOG模式
#创建SYSTEM表空间创建SYSAUX表空间
#创建数据字典I设置在数据库中存储数据的字符集
#设置数据库时区
#默认时区文件是ORACLE_HOME/oracore/zoneinfo/timezlrg_11.dat SELECT * FROM V$TIMEZONE_NAMES;
#挂载并打开数据库以供使用

生成数据字典信息的脚本并执行

vi run.sql 
@?/rdbms/admin/catalog.sql 
@?/rdbms/admin/catproc.sql 
@?/rdbms/admin/utlrp.sql 
@?/sqlplus/admin/pupbld.sql 

@run.sql
#下表包含这些脚本的说明:
#catalog.sql创建数据字典表的视图、励态性能视图和许多视图的公共同义词。授予PUBLIC对同义词的访问权限。
#catproc.sql运行PL/SQL 所需或与PL/SQL一起使用的所有脚本。
#utlrp.sql重新编译所有处于无效状态的PL/SQL模块,包括包、过程和类型。
#pupbld.sql SQL*Plus 需要,启用SQL*Plus以禁用用户命令。

#也可以用catctl.pl使用脚本运行catpcat.sql代替catalog.sql与catproc.sql
#catpcat.sql构建数据字典。
#该脚本使用catctl.pl程序运行(而不是使用SQL*Plus)并在内部运行脚本catalog.sql和catproc.sql并行进程,从而提高建数据字典的性能。

image-20241117223253084

怎么连接到另外一个数据库

方式一:使用exoprt定义一个

[oracle@hfzcdb91:/oracle/app/oracle/product/19c/db_1/dbs]$**export ORACLE_SID=hfzcdb**

image-20241117223333242

方式二:修改环境变量

[oracle@hfzcdb91:/home/oracle]$vi .bash_profile

image-20241117223410701

方式三:多个配置环境变量

[oracle@hfzcdb91:/home/oracle]$**. .bash_profile.hfzcdb**

image-20241117223442640


http://www.kler.cn/a/398747.html

相关文章:

  • SQLite 和 MySQL语法区别
  • STL序列式容器之stack
  • Flutter:Dio下载文件到本地
  • 什么是SSL VPN?其中的协议结构是怎样的?
  • 校园二手交易网站毕业设计基于SpringBootSSM框架
  • AntFlow:一款高效灵活的开源工作流引擎
  • YouQu使用手册【元素定位】
  • 小程序-基于java+SpringBoot+Vue的智能小程序商城设计与实现
  • 华为HCIP——MSTP/RSTP与STP的兼容性
  • 基于微信小程序的科学健身助手的设计与实现
  • 2411rust,异步函数
  • Docker 篇-Docker 详细安装、了解和使用 Docker 核心功能(数据卷、自定义镜像 Dockerfile、网络)
  • docker部署bitnami/etcd:latest
  • 搭建es环境
  • 【网络安全】XSS注入
  • Ubuntu上安装docker
  • 计算机毕业设计Python美食推荐系统 美团爬虫 美食可视化 机器学习 深度学习 混合神经网络推荐算法 Hadoop Spark 人工智能 大数据毕业设计
  • 大数据CDP集群中ImpalaHive常见使用语法
  • 【Excel】身份证号最后一位“X”怎么计算
  • calico网络原理、组网方式
  • 开源科学工程技术软件介绍 – EDA工具KLayout
  • 计算机网络:运输层 —— TCP的流量控制
  • Django5 2024全栈开发指南(二):Django项目配置详解
  • 【C++进阶篇】——string类的使用
  • AntFlow 0.11.0版发布,增加springboot starter模块,一款设计上借鉴钉钉工作流的免费企业级审批流平台
  • aws(学习笔记第十三课) 向AWS的RDS导入既存数据