欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 产业 > Docker容器安装软件(完整版)

Docker容器安装软件(完整版)

2025/3/14 21:14:06 来源:https://blog.csdn.net/jdxhb/article/details/146180601  浏览:    关键词:Docker容器安装软件(完整版)

文章目录

  • 一、安装Docker
    • 1.1 docker 相关的命令
    • 1.2 配置镜像加速
  • 二. 安装es
    • 2.1 创建网络
    • 2.2 拉取镜像
    • 2.3 创建挂载点目录
    • 2.4 部署单点es,创建es容器
    • 2.5 编写elasticsearch.yml
    • 2.6 重启es容器
    • 2.7 测试Elasticsearch是否安装成功
  • 三. 基于Docker安装Kibana
    • 3.1 拉取镜像
    • 3.2 启动容器
  • 四. 安装IK分词器
    • 4.1,下载插件
    • 4.2 解压
    • 4.3 上传到es容器的插件数据卷中
    • 4.4 重启容器
    • 4.5 查看日志
  • 五. 安装RabbitMQ
  • 六. 安装MySQL
    • 6.1 拉取镜像
    • 6.2 在 /usr 下创建 mysql/data 和 mysql/conf 两个目录
    • 6.3 运行mysql容器
    • 6.4使用Navicat 链接数据库
  • 七. 安装Nacos
    • 1, 拉取nacos镜像
    • 2、创建宿主机挂载目录
    • 3、启动nacos 并复制文件到宿主机,关闭容器
    • 4、mysql中创建nacos所需的表
    • 5、再次启动nacos
  • 八. 安装Nginx
    • 挂载
  • 九. 安装Redis
    • 1,拉取redis镜像
    • 2,下载配置文件
    • 3,创建Docker容器
    • 检查日志
    • 4,测试 Redis
    • 5,开放防火墙端口
  • 十. 安装oracle19c
    • 1, 拉取镜像
    • 2, 创建目录并赋权
    • 3, 构建容器并启动
    • 4,查看日志
    • 5,开放相关端口
    • 6,登录docker容器里面
    • 7,登录sqlplus 创建PDB用户
    • 8,查看show pdbs
    • 9,切换数据库
    • 10,创建用户
    • 11,授权
    • 12,使用navicat连接


一、安装Docker

# 1.卸载旧的版本
sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine# 如有需要,可以安装gcc
yum -y install gcc# 以及gcc-c++
yum -y install gcc-c++# 2.需要的安装包
sudo yum install -y yum-utils# 3.设置镜像仓库
sudo yum-config-manager \--add-repo \# 默认是国外的,不要使用https://download.docker.com/linux/centos/docker-ce.repo# 建议使用阿里云的镜像,十分快sudo yum-config-manager \--add-repo \http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo# 更新yum软件包索引(安装前的工作,非必须)
yum makecache fast
# yum makecache: error: argument timer: invalid choice: 'fast' (choose from 'timer')
# 安装报错了,yum makecache fast是centOS7的命令, 不使用8,可以直接使用
yum makecache # 或者
dnf makecache# 4.安装docker docker-ce:社区版的,docker-ee:企业版的
sudo yum install docker-ce docker-ce-cli containerd.io

1.1 docker 相关的命令

systemctl start docker # 启动docker
systemctl stop docker # 停止docker 
systemctl restart docker # 重启docker
systemctl status docker	# 查看docker启动状态

镜像相关的命令
容器相关的命令
挂载
怎么进入容器

1.2 配置镜像加速

docker官方镜像仓库网速较差,我们需要设置国内镜像服务:
参考阿里云的镜像加速文档:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

1. 安装/升级Docker客户端
推荐安装1.10.0以上版本的Docker客户端,参考文档docker-ce2. 配置镜像加速器
针对Docker客户端版本大于 1.10.0 的用户您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://wm7fopru.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

这是我的执行

二. 安装es

2.1 创建网络

因为需要部署kibana容器,因此需要让es和kibana容器互联。
指令:

docker network create es-net
[root@iZf8z89pv77t13an9qqmcrZ ~]# docker network create es-net
1a260b1b77a06b9d392b3c40e72b09656fb75513bd54840e270b9e9d0a25aa90

2.2 拉取镜像

以安装Elasticsearch 8.6.0 版本为例

docker pull elasticsearch:8.6.0

2.3 创建挂载点目录

mkdir -p /usr/local/es/data /usr/local/es/config /usr/local/es/plugins
chmod 777  /usr/local/es/data
chmod 777  /usr/local/es/config
chmod 777  /usr/local/es/plugins

2.4 部署单点es,创建es容器

docker run -d \
--restart=always \
--name es \
--network es-net \
-p 9200:9200 \
-p 9300:9300 \
--privileged \
-v /usr/local/es/data:/usr/share/elasticsearch/data \
-v /usr/local/es/plugins:/usr/share/elasticsearch/plugins \
-e "discovery.type=single-node" \
-e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \
elasticsearch:8.6.0

添加了配置文件夹的挂载

docker run -d \
--name es \
--network es-net \
-p 9200:9200 \
-p 9300:9300 \
--privileged \
-v es-data:/usr/share/elasticsearch/data \
-v es-config://usr/share/elasticsearch/config \
-v es-plugins:/usr/share/elasticsearch/plugins \
-e "discovery.type=single-node" \
-e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \
elasticsearch:8.6.0

2.5 编写elasticsearch.yml

先进入es容器

docker exec -it es /bin/bash
[root@iZf8z89pv77t13an9qqmcrZ ~]# docker exec -it es /bin/bash
elasticsearch@99253913db78:~$ 

跳转到config目录下

cd config

关闭 密码安全验证

echo 'xpack.security.enabled: false' >> elasticsearch.yml
elasticsearch@99253913db78:~$ cd config
elasticsearch@99253913db78:~/config$ echo 'xpack.security.enabled: false' >> elasticsearch.yml

2.6 重启es容器

docker restart es

2.7 测试Elasticsearch是否安装成功

访问虚拟机地址+端口号,前面配置Elasticsearch 的端口号为:9200
例如:http://47.120.37.156:9200/
在这里插入图片描述

三. 基于Docker安装Kibana

3.1 拉取镜像

以安装kibana 8.6.0 版本为例

指令:

docker pull kibana:8.6.0
[root@iZf8z89pv77t13an9qqmcrZ ~]# docker images
REPOSITORY      TAG       IMAGE ID       CREATED         SIZE
kibana          8.6.0     e903232de67c   16 months ago   718MB
elasticsearch   8.6.0     6053d49e4509   16 months ago   1.29GB
mkdir -p /usr/local/kibana/config /usr/local/kibana/data

3.2 启动容器

docker run -d \
--name kibana \
-e ELASTICSEARCH_HOSTS=http://es:9200 \
--network=es-net \
-p 5601:5601  \
kibana:8.6.0

四. 安装IK分词器

离线安装:

4.1,下载插件

下载地址https://github.com/infinilabs/analysis-ik/releases

在这里插入图片描述

4.2 解压

将我们刚刚下载的压缩包解压后改名为ik
在这里插入图片描述

4.3 上传到es容器的插件数据卷中

也就是 /usr/local/es/plugins

在这里插入图片描述

4.4 重启容器

docker restart es

4.5 查看日志

docker logs es

注意: 有时候启动容器可能没有那么快,最好通过日志查看启动的容器是否报错或者完全启动
在这里插入图片描述

五. 安装RabbitMQ

RabbitMQ安装没有那么繁琐一条命令即可

docker run \-e RABBITMQ_DEFAULT_USER=admin \-e RABBITMQ_DEFAULT_PASS=123456 \-v mq-plugins:/plugins \--name mq \--restart=always \--hostname mq1 \-p 15672:15672 \-p 5672:5672 \-d \rabbitmq:3.8-management

六. 安装MySQL

6.1 拉取镜像

docker pull mysql

6.2 在 /usr 下创建 mysql/data 和 mysql/conf 两个目录

[root@iZf8z89pv77t13an9qqmcrZ ~]# mkdir -p /usr/mysql/conf
[root@iZf8z89pv77t13an9qqmcrZ ~]# mkdir -p /usr/mysql/data
[root@iZf8z89pv77t13an9qqmcrZ ~]# cd /usr/mysql
[root@iZf8z89pv77t13an9qqmcrZ mysql]# ls
conf  data

6.3 运行mysql容器

docker run --name mysql -e MYSQL_ROOT_PASSWORD=1234 -d -p 3306:3306 -v /usr/mysql/conf:/etc/mysql/conf.d -v /usr/mysql/data:/var/lib/mysql mysql:latest

6.4使用Navicat 链接数据库

在这里插入图片描述

连接成功
在这里插入图片描述

七. 安装Nacos

1, 拉取nacos镜像

docker pull nacos/nacos-server
docker pull nacos/nacos-server:v2.3.0	指定版本

下载时间比较久,需要一段时间

[root@iZf8z89pv77t13an9qqmcrZ mysql]# docker pull nacos/nacos-server
Using default tag: latest
latest: Pulling from nacos/nacos-server
5ad559c5ae16: Pull complete 
5746ca7cf180: Pull complete 
d709fe221c89: Pull complete 
e88fdcf257b1: Pull complete 
eb573b28173c: Pull complete 
a71625257ced: Pull complete 
26e7e7836838: Pull complete 
30f7d6851c4a: Pull complete 
d565cd94c625: Pull complete 
Digest: sha256:87a3d8b78ec24c253a4db7c093097a7b256327eb5117cd9498e289b896918153
Status: Downloaded newer image for nacos/nacos-server:latest
docker.io/nacos/nacos-server:latest
[root@iZf8z89pv77t13an9qqmcrZ mysql]# docker images
REPOSITORY           TAG       IMAGE ID       CREATED       SIZE
mysql                latest    3218b38490ce   2 years ago   516MB
nacos/nacos-server   latest    bdf60dc2ada3   2 years ago   1.05GB

2、创建宿主机挂载目录

[root@iZf8z89pv77t13an9qqmcrZ mysql]# mkdir -p /usr/nacos/logs
[root@iZf8z89pv77t13an9qqmcrZ mysql]# mkdir -p /usr/nacos/conf
[root@iZf8z89pv77t13an9qqmcrZ mysql]# mkdir -p /usr/nacos/data
[root@iZf8z89pv77t13an9qqmcrZ mysql]# cd /usr/nacos
[root@iZf8z89pv77t13an9qqmcrZ nacos]# ls
conf  logs

mkdir -p /usr/nacos/logs /usr/nacos/conf /usr/nacos/data

3、启动nacos 并复制文件到宿主机,关闭容器

  • 启动nacos
[root@iZf8z89pv77t13an9qqmcrZ nacos]# docker run -p 8848:8848 --name nacos -d nacos/nacos-server
1b748a216d14f8dd284d73c75228213b57f2ff5d6c591f8c2dd4ca17e014b3d8

docker run -p 8848:8848 --name nacos -d nacos/nacos-server

  • 复制文件
[root@iZf8z89pv77t13an9qqmcrZ nacos]# docker cp nacos:/home/nacos/logs /usr/nacosSuccessfully copied 184kB to /usr/nacos
[root@iZf8z89pv77t13an9qqmcrZ nacos]# docker cp nacos:/home/nacos/conf /usr/nacosSuccessfully copied 49.2kB to /usr/nacos

docker cp nacos:/home/nacos/conf/ /usr/nacos/
docker cp nacos:/home/nacos/logs/ /usr/nacos/
docker cp nacos:/home/nacos/data/ /usr/nacos/

  • 关闭容器(容器id也可以)
[root@iZf8z89pv77t13an9qqmcrZ nacos]# docker rm -f nacos
nacos

4、mysql中创建nacos所需的表

mysql中新建一个库,名字可自定义,这里就用nacos,从github中找到创建表的文件,在nacos-config库中执行,创建所需的表https://myblogoss2.oss-cn-beijing.aliyuncs.com/dump-nacos-202403131030.sql

在这里插入图片描述

5、再次启动nacos

docker run -d --name nacos -p 8848:8848 -p 9848:9848 -p 9849:9849 --privileged=true -e JVM_XMS=256m -e JVM_XMX=256m -e MODE=standalone -v /usr/nacos/logs/:/home/nacos/logs -v /usr/nacos/conf/:/home/nacos/conf/ -v /usr/nacos/data/:/home/nacos/data/ --restart=always nacos/nacos-server:v2.3.0

docker run -d -e MODE=standalone -e PREFER_HOST_MODE=hostname -e SPRING_DATASOURCE_PLATFORM=mysql -e MYSQL_SERVICE_HOST=127.0.0.1 -e MYSQL_SERVICE_PORT=3306 -e MYSQL_SERVICE_USER=root -e MYSQL_SERVICE_PASSWORD=1234 -e MYSQL_SERVICE_DB_NAME=nacos -p 8848:8848 -p 9848:9848 -p 9849:9849 --name nacos --restart=always nacos/nacos-server

[root@iZf8z89pv77t13an9qqmcrZ nacos]# docker run -d --name nacos -p 8848:8848  -p 9848:9848 -p 9849:9849 --privileged=true -e JVM_XMS=256m -e JVM_XMX=256m -e MODE=standalone -v /usr/nacos/logs/:/home/nacos/logs -v /usr/nacos/conf/:/home/nacos/conf/ --restart=always nacos/nacos-server
b70e5dd54e4ee8dbf72bff2006cd4add7d6302cc1f736d1dfbc06f41fa99b101
[root@iZf8z89pv77t13an9qqmcrZ nacos]# docker ps
CONTAINER ID   IMAGE                COMMAND                   CREATED          STATUS          PORTS                                                                                                      NAMES
b70e5dd54e4e   nacos/nacos-server   "bin/docker-startup.…"   3 seconds ago    Up 2 seconds    0.0.0.0:8848->8848/tcp, :::8848->8848/tcp, 0.0.0.0:9848-9849->9848-9849/tcp, :::9848-9849->9848-9849/tcp   nacos
2fae66209fb4   mysql:latest         "docker-entrypoint.s…"   37 minutes ago   Up 37 minutes   0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp                                                       mysql
docker run -d \
--name nacos \
-p 8848:8848  -p 9848:9848 -p 9849:9849 \
--privileged=true \
-e JVM_XMS=256m \
-e JVM_XMX=256m \
-e MODE=standalone \
-v nacos-logs:/usr/nacos/logs \
-v nacos-conf:/home/nacos/conf \
-v nacos-data:/home/nacos/data \
--restart=always nacos/nacos-server:v2.3.0

注意事项
虚拟机需要在防火墙开放相关端口,或者关了防火墙,如果你是云服务器,开放安全组

输入地址:http://ip:8848/nacos/index.html

如果报错误:
https://blog.csdn.net/qq_17369545/article/details/135022129

八. 安装Nginx

1.拉取镜像

docker pull nginx

2.查看镜像

[root@iZf8z89pv77t13an9qqmcrZ ~]# systemctl start docker
[root@iZf8z89pv77t13an9qqmcrZ ~]# docker images
REPOSITORY           TAG       IMAGE ID       CREATED       SIZE
1panel/maxkb         latest    c023f10d7cab   2 weeks ago   2.66GB
nginx                latest    605c77e624dd   2 years ago   141MB
redis                latest    7614ae9453d1   2 years ago   113MB
mysql                latest    3218b38490ce   2 years ago   516MB
nacos/nacos-server   latest    bdf60dc2ada3   2 years ago   1.05GB

3.运行镜像

[root@iZwz96byk26u1sns4xp7giZ ~]# docker run --name mn -d -p 80:80 nginx
49c02ef7c18facc452762fa7e722720235290df28fce39b6aebb8b024ae21d70

4.检测
在这里插入图片描述

挂载

简单启动nginx

docker run --name mn -d -p 80:80 nginx

创建配置文件夹

mkdir -p /opt/nginx

复制文件

docker cp mn:/usr/share/nginx/html /opt/nginx/
docker cp mn:/etc/nginx/nginx.conf /opt/nginx/
docker cp mn:/etc/nginx/conf.d /opt/nginx/

删除原有的Nginx容器

docker rm -f mn

创建容器

docker run --name nginx -d \
-p 80:80 -p 81:81 \
-v /opt/nginx/html:/usr/share/nginx/html \
-v /opt/nginx/nginx.conf:/etc/nginx/nginx.conf:ro \
-v /opt/nginx/conf.d:/etc/nginx/conf.d \
nginx

修改配置
在这里插入图片描述

将端口改成81
在这里插入图片描述

九. 安装Redis

1,拉取redis镜像

[root@iZf8z89pv77t13an9qqmcrZ ~]# docker pull redis

查看镜像

[root@iZf8z89pv77t13an9qqmcrZ ~]# docker images
REPOSITORY           TAG       IMAGE ID       CREATED       SIZE
nginx                latest    605c77e624dd   2 years ago   141MB
redis                latest    7614ae9453d1   2 years ago   113MB
mysql                latest    3218b38490ce   2 years ago   516MB
nacos/nacos-server   latest    bdf60dc2ada3   2 years ago   1.05GB

2,下载配置文件

https://redis.io/docs/latest/operate/oss_and_stack/management/config/

在这里插入图片描述

如果之前用linux下载方式安装了reids 也可以直接复制redis.conf配置文件
在这里插入图片描述

3,创建Docker容器

接下来就是要将redis 的配置文件进行挂载,以配置文件方式启动redis 容器。(挂载:即将宿主的文件和容器内部目录相关联,相互绑定,在宿主机内修改文件的话也随之修改容器内部文件)
1)、挂载 redis 的配置文件
2)、挂载 redis 的持久化文件(为了数据的持久化)。
本人的配置文件是放在
liunx 下redis.conf文件位置:/usr/redis/myredis/redis.conf
liunx 下redis的data文件位置 : /usr/redis/myredis/data
在这里插入图片描述
创建容器
docker run -p 6379:6379 --name redis -v /usr/redis/myreids/redis.conf:/etc/redis/redis.conf -v /usr/redis/myredis/data:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes

[root@iZf8z89pv77t13an9qqmcrZ ~]# docker run -p 6379:6379 --name redis -v /usr/redis/myreids/redis.conf:/etc/redis/redis.conf  -v /usr/redis/myredis/data:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes
3caef72f5f45b7ca6175b99ad5081a3e48a327560cd2be078e1be484105068f4
[root@iZf8z89pv77t13an9qqmcrZ ~]# docker ps
CONTAINER ID   IMAGE                COMMAND                   CREATED         STATUS         PORTS                                                                                                      NAMES
3caef72f5f45   redis                "docker-entrypoint.s…"   5 seconds ago   Up 4 seconds   0.0.0.0:6379->6379/tcp, :::6379->6379/tcp                                                                  redis
b70e5dd54e4e   nacos/nacos-server   "bin/docker-startup.…"   8 days ago      Up 8 days      0.0.0.0:8848->8848/tcp, :::8848->8848/tcp, 0.0.0.0:9848-9849->9848-9849/tcp, :::9848-9849->9848-9849/tcp   nacos
2fae66209fb4   mysql:latest         "docker-entrypoint.s…"   9 days ago      Up 9 days      0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp   

检查日志

[root@iZf8z89pv77t13an9qqmcrZ ~]# docker logs redis
1:C 24 Apr 2024 11:12:30.551 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
1:C 24 Apr 2024 11:12:30.551 # Redis version=6.2.6, bits=64, commit=00000000, modified=0, pid=1, just started
1:C 24 Apr 2024 11:12:30.551 # Configuration loaded
1:M 24 Apr 2024 11:12:30.551 * monotonic clock: POSIX clock_gettime
1:M 24 Apr 2024 11:12:30.552 * Running mode=standalone, port=6379.
1:M 24 Apr 2024 11:12:30.552 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
1:M 24 Apr 2024 11:12:30.552 # Server initialized
1:M 24 Apr 2024 11:12:30.552 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
1:M 24 Apr 2024 11:12:30.552 * Ready to accept connections

创建成功

4,测试 Redis

  1. 输入指令:docker exec -it redis bash,进入容器内。
  2. 输入指令:redis-cli,运行 redis 客户端。
  3. 输入指令:ping,显示 PONG 代表测试成功!
[root@iZf8z89pv77t13an9qqmcrZ ~]# docker exec -it redis bash
root@3caef72f5f45:/data# redis-c
redis-check-aof  redis-check-rdb  redis-cli        
root@3caef72f5f45:/data# redis-cli 
127.0.0.1:6379> ping
PONG

连接成功

5,开放防火墙端口

输入指令:firewall-cmd --zone=public --add-port=6379/tcp --permanent,开放防火墙指定端口。
输入指令:firewall-cmd --reload,重新加载防火墙。
firewall-cmd --zone=public --add-port=5672/tcp --permanent   # 开放5672端口firewall-cmd --zone=public --remove-port=5672/tcp --permanent  #关闭5672端口firewall-cmd --reload   # 配置立即生效firewall-cmd --zone=public --list-ports # 查看开放的端口列表

十. 安装oracle19c

1, 拉取镜像

docker pull registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c

或者导入镜像

docker -i 

2, 创建目录并赋权

mkdir -p /opt/oracle/oradata
chmod 777  /opt/oracle/oradata

3, 构建容器并启动

docker run -d -p 1521:1521 \-p 5502:5500  \-e ORACLE_SID=ORCLCDB  \-e ORACLE_PDB=ORCLPDB  \-e ORACLE_PWD=oracle  \-e ORACLE_EDITION=standard \-e ORACLE_CHARACTERSET=AL32UTF8  \-v /opt/oracle/oradata/:/opt/oracle/oradata/ --name  oracle_19c \registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c
  1. docker run: 运行 Docker 容器的命令。
  2. -d: 指定容器在后台运行(detached mode)。
  3. -p 1521:1521: 将容器的 1521 端口映射到主机的 1521 端口,Oracle 数据库监听端口。
  4. -p 5502:5500: 将容器的 5500 端口映射到主机的 5502 端口,用于 Oracle Enterprise Manager Express 访问的端口。
  5. -e ORACLE_SID=ORCLCDB: 设置 Oracle 实例的 SID(System Identifier),这里设置为 ORCLCDB。
  6. -e ORACLE_PDB=ORCLPDB: 设置 Oracle 的 Pluggable Database(PDB)的名称,这里设置为 ORCLPDB。
  7. -e ORACLE_PWD=oracle: 设置 Oracle 系统用户 SYS 和 SYSTEM 的初始密码为 oracle。
  8. -e ORACLE_EDITION=standard: 设置 Oracle 的版本为标准版(standard),这影响 Oracle 的功能集。
  9. -e ORACLE_CHARACTERSET=AL32UTF8: 设置 Oracle 数据库的字符集为 AL32UTF8,即 Unicode 字符集。
  10. -v /docker/oracle19c/oradata/:/opt/oracle/oradata/: 将主机上的 /docker/oracle19c/oradata/ 目录挂载到容器内的 /opt/oracle/oradata/ 目录,用于持久化存储数据库文件。
  11. –name oracle_19c: 指定容器的名称为 oracle_19c。
  12. registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c: 指定要运行的 Docker 镜像,这里是从阿里云的镜像仓库中拉取并运行名为 oracle:19c 的镜像。

4,查看日志

docker logs -ft oracle_19c

在这里插入图片描述

5,开放相关端口

firewall-cmd --zone=public --add-port=1521/tcp --permanent
firewall-cmd --zone=public --add-port= 5502/tcp --permanent
firewall-cmd --reload #重新加载防火墙。

6,登录docker容器里面

docker exec -it oracle_19c /bin/bash

7,登录sqlplus 创建PDB用户

sqlplus / as sysdba

Oracle 数据库中,sqlplus / as sysdba 是一种连接到数据库的方式,其中:
sqlplus 是 Oracle 提供的交互式 SQL 工具,用于与 Oracle 数据库进行交互和执行 SQL 命令。
/ as sysdba 是一种特殊的连接方式,其中 / 表示连接时不需要输入用户名,sysdba 是系统管理员角色的一种,具有最高权限,可以执行数据库的管理操作。
因此,当你使用 sqlplus / as sysdba 命令连接到 Oracle 数据库时,你将以系统管理员 (sysdba) 的身份登录,拥有对数据库实例进行各种管理操作的权限。这种连接方式常用于执行数据库的操作和维护,例如创建和修改数据库对象、备份和恢复数据等。需要谨慎使用,以免误操作导致不可逆的损坏。

8,查看show pdbs

show pdbs

在这里插入图片描述

9,切换数据库

alter session set container=ORCLPDB;

10,创建用户

# create user 用户名 identified by 密码;
create user root identified by root;

11,授权

grant dba to root;

Oracle 数据库中,GRANT DBA TO user; 是一种授权命令,用于赋予指定用户(user)数据库管理员 (DBA) 的权限。具体到你的问题 grant dba to root;,这个命令的含义如下:

GRANT: 这是 Oracle 数据库中用于授权的关键字,用于给予用户特定的权限。
DBA: 是一个预定义的角色(Role),代表数据库管理员角色,具有数据库的最高权限。DBA 角色允许用户管理数据库对象、执行系统级别的任务等。
TO: 表示授权的目标,即要授予权限的用户或角色。
root: 在你的命令中,root 可能指的是操作系统中的 root 用户,但需要注意,在 Oracle 数据库中,通常需要使用数据库用户(例如 SYS 用户)来执行授权操作,而不是操作系统的 root 用户。

12,使用navicat连接

在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词