一、Docker部署

1.Oracle11g

1.1 测试环境

  • 当前只能用于测试环境,因为数据文件目录未挂载到宿主机
1.1.1 拉取镜像
  • 该镜像是阿里云的,下载速度会比较快
docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
  • 该镜像的root密码:helowin
    • 需要su root切
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

一、部署Oracle-LMLPHP

# 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

一、部署Oracle-LMLPHP

二、安装包部署

02-14 16:47