Docker 安装oracle12c容器并创建新用户

2023-10-17 13:36

本文主要是介绍Docker 安装oracle12c容器并创建新用户,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Docker 安装oracle12c容器并创建新用户

  1. 下载镜像

    docker pull truevoly/oracle-12c
    
  2. 启动镜像 8080和22端口没有映射出来,有需要自己

    docker run -d -p 8123:1521 -restart=always --privileged=true -v /data/docker/Oracle12c_sichuan:/u01/app/oracle/ --name oracle12c-sichuan truevoly/oracle-12c
    
    • 正常日志

      Database not initialized. Initializing database.
      Starting tnslsnr
      Copying database files
      1% complete
      3% complete
      11% complete
      18% complete
      37% complete
      Creating and starting Oracle instance
      40% complete
      62% complete
      Completing Database Creation
      96% complete
      100% complete
      Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/xe/xe.log" for further details.
      Configuring Apex console
      Database initialized. Please visit http://#containeer:8080/em http://#containeer:8080/apex for extra configuration if needed
      Starting web management console
      PL/SQL procedure successfully completed.
      Starting import from '/docker-entrypoint-initdb.d':
      ls: cannot access /docker-entrypoint-initdb.d/*: No such file or directory
      Import finished
      Database ready to use. Enjoy! ;)
      
    • 启动报错日志

      atabase not initialized. Initializing database.
      Starting tnslsnr
      Cannot create directory "/u01/app/oracle/cfgtoollogs/dbca".
      Unique database identifier check passed.
      Error writing into silent log -- /u01/app/oracle/cfgtoollogs/dbca/silent.log_2023-10-17_03-29-34-AM (No such file or directory)
      /u01/app/oracle/ has enough space. Required space is 6140 MB , available space is 128006 MB.
      File Validations Successful.
      Error writing into silent log -- /u01/app/oracle/cfgtoollogs/dbca/silent.log_2023-10-17_03-29-34-AM (No such file or directory)
      Cannot create directory "/u01/app/oracle/cfgtoollogs/dbca/xe".
      Error writing into silent log -- /u01/app/oracle/cfgtoollogs/dbca/silent.log_2023-10-17_03-29-34-AM (No such file or directory)
      Error in file copy from </u01/app/oracle/cfgtoollogs/dbca/silent.log_2023-10-17_03-29-34-AM> to </u01/app/oracle/cfgtoollogs/dbca/xe.log>
      Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/silent.log_2023-10-17_03-29-34-AM" for further details.
      

      原因 容器没有操作主机文件夹权限

      主机内执行

      chmod -R a+w /data/docker/Oracle12c_sichuan
      
  3. 进入容器内并以dba登录Oracle

    # 进入oracle-12c容器内
    docker exec -it oracle-12c /bin/bash
    # 切换成oracle用户
    su oracle
    # 进入sqlplus
    $ORACLE_HOME/bin/sqlplus / as sysdba
    
  4. 创建表空间及用户和赋权

    # 设置密码有效期为无限制
    # 默认有sys和system两个用户,密码都是oracle,默认的一个SID/服务名是xeSQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;# 解锁system用户
    SQL> alter user SYSTEM account unlock;
    SQL> alter user SYS account unlock;创建四川表空间
    --表空间
    --不限制表空间大小用:maxsize unlimited
    --限制表空间大小用:maxsize 1024m
    --自动扩充表空间:一次50m 
    --注意表空间名实际会变成大写 SICHUAN_DATA
    create tablespace sichuan_data 
    logging 
    datafile '/u01/app/oracle/oradata/xe/sichuan_data.dbf' 
    size 50m 
    autoextend on 
    next 50m maxsize unlimited
    extent management local;--创建临时表空间
    create temporary tablespace sichuan_temp 
    tempfile '/u01/app/oracle/oradata/xe/sichuan_temp.dbf' 
    size 50m 
    autoextend on 
    next 50m maxsize unlimited
    extent management local;alter user system identified by "6#rKXq24@1"; alter user sys identified by "6#rKXq24@1"; # 创建用户
    # 密码带特殊符号 password 需要双引号 "password"
    create user username identified by password;# 依次给各用户赋权SQL> GRANT ALTER ANY PROCEDURE TO username;
    SQL> GRANT ALTER ANY TABLE TO username;
    SQL> GRANT ALTER ANY TRIGGER TO username;
    SQL> GRANT ALTER ANY TYPE TO username;
    SQL> GRANT CREATE ANY TABLE TO username;
    SQL> GRANT DELETE ANY TABLE TO username;
    SQL> GRANT DROP ANY PROCEDURE TO username;
    SQL> GRANT DROP ANY SEQUENCE TO username;
    SQL> GRANT DROP ANY TABLE TO username;
    SQL> GRANT DROP ANY TRIGGER TO username;
    SQL> GRANT DROP ANY TYPE TO username;
    SQL> GRANT DROP ANY VIEW TO username;
    SQL> GRANT SELECT ANY DICTIONARY TO username;
    SQL> GRANT SELECT ANY SEQUENCE TO username;
    SQL> GRANT SELECT ANY TABLE TO username;
    SQL> GRANT UNDER ANY TABLE TO username;
    SQL> GRANT UNDER ANY TYPE TO username;
    SQL> GRANT UNDER ANY VIEW TO username;
    SQL> GRANT UNLIMITED TABLESPACE TO username;
    SQL> GRANT UPDATE ANY TABLE TO username;
    SQL> GRANT CONNECT TO username;
    SQL> GRANT DBA TO username;
    SQL> GRANT RESOURCE TO username;修改用户的默认表空间为sichuan_data:
    SQL> alter user XZXK default tablespace sichuan_data;
    SQL> alter user XZXK_JL default tablespace sichuan_data;
    SQL> alter user ESF default tablespace sichuan_data;
    SQL> alter user DIC default tablespace sichuan_data;
    

这篇关于Docker 安装oracle12c容器并创建新用户的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

SpringBoot+Docker+Graylog 如何让错误自动报警

《SpringBoot+Docker+Graylog如何让错误自动报警》SpringBoot默认使用SLF4J与Logback,支持多日志级别和配置方式,可输出到控制台、文件及远程服务器,集成ELK... 目录01 Spring Boot 默认日志框架解析02 Spring Boot 日志级别详解03 Sp

Spring IoC 容器的使用详解(最新整理)

《SpringIoC容器的使用详解(最新整理)》文章介绍了Spring框架中的应用分层思想与IoC容器原理,通过分层解耦业务逻辑、数据访问等模块,IoC容器利用@Component注解管理Bean... 目录1. 应用分层2. IoC 的介绍3. IoC 容器的使用3.1. bean 的存储3.2. 方法注

Python中win32包的安装及常见用途介绍

《Python中win32包的安装及常见用途介绍》在Windows环境下,PythonWin32模块通常随Python安装包一起安装,:本文主要介绍Python中win32包的安装及常见用途的相关... 目录前言主要组件安装方法常见用途1. 操作Windows注册表2. 操作Windows服务3. 窗口操作

java实现docker镜像上传到harbor仓库的方式

《java实现docker镜像上传到harbor仓库的方式》:本文主要介绍java实现docker镜像上传到harbor仓库的方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录1. 前 言2. 编写工具类2.1 引入依赖包2.2 使用当前服务器的docker环境推送镜像2.2

c++中的set容器介绍及操作大全

《c++中的set容器介绍及操作大全》:本文主要介绍c++中的set容器介绍及操作大全,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录​​一、核心特性​​️ ​​二、基本操作​​​​1. 初始化与赋值​​​​2. 增删查操作​​​​3. 遍历方

python如何创建等差数列

《python如何创建等差数列》:本文主要介绍python如何创建等差数列的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录python创建等差数列例题运行代码回车输出结果总结python创建等差数列import numpy as np x=int(in

怎么用idea创建一个SpringBoot项目

《怎么用idea创建一个SpringBoot项目》本文介绍了在IDEA中创建SpringBoot项目的步骤,包括环境准备(JDK1.8+、Maven3.2.5+)、使用SpringInitializr... 目录如何在idea中创建一个SpringBoot项目环境准备1.1打开IDEA,点击New新建一个项

如何使用Maven创建web目录结构

《如何使用Maven创建web目录结构》:本文主要介绍如何使用Maven创建web目录结构的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录创建web工程第一步第二步第三步第四步第五步第六步第七步总结创建web工程第一步js通过Maven骨架创pytho

SpringSecurity显示用户账号已被锁定的原因及解决方案

《SpringSecurity显示用户账号已被锁定的原因及解决方案》SpringSecurity中用户账号被锁定问题源于UserDetails接口方法返回值错误,解决方案是修正isAccountNon... 目录SpringSecurity显示用户账号已被锁定的解决方案1.问题出现前的工作2.问题出现原因各

MySQL 用户创建与授权最佳实践

《MySQL用户创建与授权最佳实践》在MySQL中,用户管理和权限控制是数据库安全的重要组成部分,下面详细介绍如何在MySQL中创建用户并授予适当的权限,感兴趣的朋友跟随小编一起看看吧... 目录mysql 用户创建与授权详解一、MySQL用户管理基础1. 用户账户组成2. 查看现有用户二、创建用户1. 基