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

Oracle数据库学习笔记 - 创建、备份和恢复

Oracle数据库学习笔记 创建,备份和恢复

Oracle 版本基于11g
尽量不使用图形界面方式,操作适用于linux和windows

创建数据库

创建实例

# 步骤1:设置环境变量
export ORACLE_SID=myorcl
export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH
# 步骤2:创建初始化参数文件
# 创建pfile
cat > $ORACLE_HOME/dbs/initmyorcl.ora << EOF
db_name=myorcl
memory_target=2G
processes=300
sessions=472
db_block_size=8192
compatible=19.0.0
db_create_file_dest=/u01/app/oracle/oradata
db_recovery_file_dest=/u01/app/oracle/fast_recovery_area
db_recovery_file_dest_size=4G
undo_management=AUTO
control_files=(/u01/app/oracle/oradata/myorcl/control01.ctl,/u01/app/oracle/oradata/myorcl/control02.ctl)
EOF
# 步骤3:创建必要目录
mkdir -p /u01/app/oracle/oradata/myorcl
mkdir -p /u01/app/oracle/fast_recovery_area
mkdir -p /u01/app/oracle/admin/myorcl/adump
# 步骤4:启动实例并创建数据库
# 启动sqlplus
sqlplus / as sysdba# 在sqlplus中执行
STARTUP NOMOUNT;CREATE DATABASE myorcl
USER SYS IDENTIFIED BY oracle123
USER SYSTEM IDENTIFIED BY oracle123
LOGFILE GROUP 1 ('/u01/app/oracle/oradata/myorcl/redo01.log') SIZE 100M,GROUP 2 ('/u01/app/oracle/oradata/myorcl/redo02.log') SIZE 100M,GROUP 3 ('/u01/app/oracle/oradata/myorcl/redo03.log') SIZE 100M
MAXLOGFILES 3
MAXLOGMEMBERS 3
MAXDATAFILES 100
CHARACTER SET AL32UTF8
NATIONAL CHARACTER SET AL16UTF16
DATAFILE '/u01/app/oracle/oradata/myorcl/system01.dbf' SIZE 700M REUSE
SYSAUX DATAFILE '/u01/app/oracle/oradata/myorcl/sysaux01.dbf' SIZE 550M REUSE
DEFAULT TABLESPACE usersDATAFILE '/u01/app/oracle/oradata/myorcl/users01.dbf' SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
DEFAULT TEMPORARY TABLESPACE tempts1TEMPFILE '/u01/app/oracle/oradata/myorcl/temp01.dbf' SIZE 20M REUSE
UNDO TABLESPACE undotbs1DATAFILE '/u01/app/oracle/oradata/myorcl/undotbs01.dbf' SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;
# 步骤5:创建数据字典
-- 在sqlplus中继续执行
@?/rdbms/admin/catalog.sql
@?/rdbms/admin/catproc.sql
@?/sqlplus/admin/pupbld.sql

windows下可以直接使用Database Configuration Assistant

创建Listener

直接编辑listener.ora

# listener.ora Network Configuration File: C:\app\Administrator\product\11.2.0\dbhome_1\network\admin\listener.ora
# Generated by Oracle configuration tools.# 单个listener监听多个端口,所有实例都可通过任一端口访问
LISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = WIN-S6D4H9HDL8B)(PORT = 1521))(ADDRESS = (PROTOCOL = TCP)(HOST = WIN-S6D4H9HDL8B)(PORT = 1522))(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))))# 所有实例的静态注册(可通过1521或1522端口访问)
SID_LIST_LISTENER =(SID_LIST =(SID_DESC =(GLOBAL_DBNAME = hicon)(ORACLE_HOME = C:\app\Administrator\product\11.2.0\dbhome_1)(SID_NAME = hicon))(SID_DESC =(GLOBAL_DBNAME = orcl)(ORACLE_HOME = C:\app\Administrator\product\11.2.0\dbhome_1)(SID_NAME = orcl))(SID_DESC =(GLOBAL_DBNAME = orclh1)(ORACLE_HOME = C:\app\Administrator\product\11.2.0\dbhome_1)(SID_NAME = orclh1)))ADR_BASE_LISTENER = C:\app\Administrator

这是静态注册方式,直接告诉listener有多少个实例,SID_LIST项可以不存在,这时oracle会动态注册实例到listener,可能会由一定的延时才能连上
实例可以自主决定使用哪个listener
一般一个实例下设置3~5个Schemas为宜

创建Schema

  • 首先连接到具体实例
create user xxx  identified by "password";
grant dba to xxx;

备份恢复数据库

# 创建备份目录
mkdir D:\oracle_dump
# 登入现有实例
## 方式1
sqlplus system/123456@"(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(
HOST=WIN-S6D4H9HDL8B)(PORT=1521))(CONNECT_DATA=(SID=orclh1)))"
## 方式2
sqlplus system/password@WIN-7JA8JJ4UHP2:1522:orcl2 as sysdba ## 配置oracle目录对象
CREATE DIRECTORY dump_dir AS 'D:\oracle_dump';
GRANT READ, WRITE ON DIRECTORY dump_dir TO system;
exit -- 退出sql模式
## 备份数据库 - 从orcl实例中导出
expdp system/123456@WIN-S6D4H9HDL8B:1521:orcl DIRECTORY=dump_dir DUMPFILE=smpA_export.dmp LOGFILE=smpA_export.log SCHEMAS=smpA## 恢复数据库 - 将导出的数据库恢复到orclh1实例
impdp system/123456@WIN-S6D4H9HDL8B:1522/orclh1 DIRECTORY=dump_dir DUMPFILE=smpA_export.dmp LOGFILE=smpA_import.log SCHEMAS=smpA
http://www.xdnf.cn/news/12482.html

相关文章:

  • html表格转换为markdown
  • 测试设计技术全解析:黑盒与白盒测试的七种武器与覆盖率指标
  • 深入解析Java中的装箱与拆箱机制
  • CMOS图像传感器系列--(一)像素设计基础
  • BEV和OCC学习-5:数据预处理流程
  • 全生命周期的智慧城市管理
  • Qemu arm操作系统开发环境
  • Python图像处理基础(五)
  • 第34次CCF-CSP认证真题解析(目标300分做法)
  • 预训练语言模型T5-11B的简要介绍
  • 精益数据分析(95/126):Socialight的定价转型启示——B2B商业模式的价格策略与利润优化
  • 外卖大战背后的创始人IP智慧:差异化、护城河与心智占领
  • c++中的输入输出流(标准IO,文件IO,字符串IO)
  • GenAI 工程师学习路径总结
  • 【EN18031】标准系列深度解读
  • C++中的概念(Concepts)
  • ABP VNext 与 Neo4j:构建基于图数据库的高效关系查询
  • 【Linux 学习计划】-- 进程程序替换
  • 大模型在脑梗塞后遗症风险预测及治疗方案制定中的应用研究
  • 中科院提出多方协作注意力控制方法MCA-Ctrl,无需调优的即可使用文本和复杂的视觉条件实现高质量的图像定制。
  • Java适配器模式深度解析:无缝集成不兼容系统的艺术
  • 永磁同步电机无速度算法--基于卡尔曼滤波器的滑模观测器
  • 前段三剑客之JavaScript-02
  • 案例分析|棘轮行为有限元分析
  • 构建 MCP 服务器:第 3 部分 — 添加提示
  • vue3实战第四步:引入Font Awesome图标库(二)
  • 第3章——SSM整合
  • 高危文件识别的常用算法:原理、应用与企业场景
  • Ctrl+R 运行xxx.exe,发现有如下问题.
  • Java设计模式之状态模式详解