一、部署Oracle

部署Oracle

  • 一、Docker部署
    • 1.Oracle11g
      • [1.1 测试环境](#1.1 测试环境)
        • [1.1.1 拉取镜像](#1.1.1 拉取镜像)
        • [1.1.2 启动容器](#1.1.2 启动容器)
        • [1.1.3 配置容器环境变量](#1.1.3 配置容器环境变量)
        • [1.1.4 修改sys、system用户密码](#1.1.4 修改sys、system用户密码)
        • [1.1.5 创建表空间](#1.1.5 创建表空间)
        • [1.1.6 创建用户并授权](#1.1.6 创建用户并授权)
        • [1.1.5 使用DBeaver测试连接](#1.1.5 使用DBeaver测试连接)
  • 二、安装包部署

一、Docker部署

1.Oracle11g

1.1 测试环境

  • 当前只能用于测试环境,因为数据文件目录未挂载到宿主机
1.1.1 拉取镜像
1.1.2 启动容器
docker run -d -p 1521:1521 --name oracle11g registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
  • 参数详解:
    • -d:表示以后台模式(detached mode)运行容器,即使在关闭终端之后,容器也可以继续运行。
    • -p 1521:1521:将容器的 1521 端口映射到宿主机的 1521 端口。这样,你可以从宿主机上的客户端连接到容器中运行的 Oracle 数据库。
    • --name oracle11g:为容器指定一个名称,方便后续对容器进行管理和操作。
    • registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g:指定要运行的 Docker 镜像名称。该镜像是一个包含 Oracle 11g 数据库的镜像,由阿里云提供。
1.1.3 配置容器环境变量
# 1.进入容器
docker exec -it oracle11g bash

# 2.打开 bashrc,每次进来就会加载,这个修改oracle用户的即可
vi ~/.bashrc
# 在profile最后面加上以下内容
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2
export ORACLE_SID=helowin
export PATH=$ORACLE_HOME/bin:$PATH
# 4.刷新配置
source ~/.bashrc
1.1.4 修改sys、system用户密码

登录oracle

[oracle@d37726651279 /]$ sqlplus /nolog

SQL*Plus: Release 11.2.0.1.0 Production on Mon Feb 12 10:28:17 2024

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

SQL> conn /as sysdba
Connected.

修改默认用户密码

SQL> alter user system identified by system;

User altered.

SQL> alter user sys identified by sys;

User altered.

SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

Profile altered.
  • 命令详解
    • ALTER USER system IDENTIFIED BY system;:这个命令用于修改 system 用户的密码。在这个例子中,将密码修改为 system。你可以根据需要替换 system 为其他复杂的密码。
    • ALTER USER sys IDENTIFIED BY sys;:这个命令用于修改 sys 用户的密码。在这个例子中,将密码修改为 sys。同样,你可以根据需要替换为其他密码。
      • 注意:修改 sys 和 system 用户的密码需要非常小心,确保使用强密码并只授权给受信任的用户。
    • ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;:这个命令用于更改默认配置文件 DEFAULT 的密码策略。在这个例子中,将密码寿命限制设置为无限制,即密码永不过期。
1.1.5 创建表空间
# 使用sysdba账户进入
sqlplus / as sysdba

# 创建表空间
SQL> create tablespace test_db datafile '/home/oracle/app/oracle/oradata/helowin/test_db.dbf' size 1024M autoextend on next 100M;

Tablespace created.
  • 参数详解:
    • create tablespace:创建表空间的 SQL 关键字。
    • test_db:新表空间的名称。
    • datafile:指定该表空间所使用的数据文件。
    • '/home/oracle/app/oracle/oradata/helowin/test_db.dbf':数据文件的完整路径和文件名。
    • size 1024M:指定数据文件的初始大小为 1024 MB。
    • autoextend on:表示数据文件启用自动扩展功能。
    • next 100M:指定每次自动扩展的增量为 100 MB。
1.1.6 创建用户并授权
  • 一个用户可以被授权使用多个表空间,而一个表空间也可以被授权给多个用户使用。

    /创建用户 并授权test_db表空间/
    create user ora_user identified by qwe123 default tablespace test_db;
    /授权 DBA 角色给test_user的 SQL 语句。在 Oracle 数据库中,DBA 角色是最高权限的角色之一,拥有对数据库实例的完全访问权和管理权。/
    grant dba to ora_user;

1.1.5 使用DBeaver测试连接
  • 在sqlplus使用system用户登录,查询服务名称

    [oracle@d37726651279 /]$ sqlplus

    SQL*Plus: Release 11.2.0.1.0 Production on Mon Feb 12 10:54:11 2024

    Copyright (c) 1982, 2009, Oracle. All rights reserved.

    Enter user-name: system
    Enter password:

    Connected to:
    Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
    With the Partitioning, OLAP, Data Mining and Real Application Testing options

    SQL> select value from v$parameter where name = 'service_names';

    VALUE

    helowin

  • 需要先查看端口是否开放

    开放1521端口,需要回到宿主机执行!!!

    firewall-cmd --zone=public --add-port=1521/tcp --permanent
    firewall-cmd --reload

二、安装包部署

相关推荐
尘浮生27 分钟前
Java项目实战II基于微信小程序的校运会管理系统(开发文档+数据库+源码)
java·开发语言·数据库·微信小程序·小程序·maven·intellij-idea
偶尔。53528 分钟前
什么是事务?事务有哪些特性?
数据库·oracle
安迁岚30 分钟前
【SQL Server】华中农业大学空间数据库实验报告 实验六 视图
数据库·sql·mysql·oracle·实验报告
喵叔哟36 分钟前
16. 【.NET 8 实战--孢子记账--从单体到微服务】--汇率获取定时器
微服务·oracle·.net
xoxo-Rachel39 分钟前
(超级详细!!!)解决“com.mysql.jdbc.Driver is deprecated”警告:详解与优化
java·数据库·mysql
JH30731 小时前
Oracle与MySQL中CONCAT()函数的使用差异
数据库·mysql·oracle
蓝染-惣右介1 小时前
【MyBatisPlus·最新教程】包含多个改造案例,常用注解、条件构造器、代码生成、静态工具、类型处理器、分页插件、自动填充字段
java·数据库·tomcat·mybatis
冷心笑看丽美人1 小时前
Spring框架特性及包下载(Java EE 学习笔记04)
数据库
武子康2 小时前
Java-07 深入浅出 MyBatis - 一对多模型 SqlMapConfig 与 Mapper 详细讲解测试
java·开发语言·数据库·sql·mybatis·springboot
代码吐槽菌3 小时前
基于SSM的毕业论文管理系统【附源码】
java·开发语言·数据库·后端·ssm