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
- 输入指令:docker exec -it redis bash,进入容器内。
- 输入指令:redis-cli,运行 redis 客户端。
- 输入指令: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
- docker run: 运行 Docker 容器的命令。
- -d: 指定容器在后台运行(detached mode)。
- -p 1521:1521: 将容器的 1521 端口映射到主机的 1521 端口,Oracle 数据库监听端口。
- -p 5502:5500: 将容器的 5500 端口映射到主机的 5502 端口,用于 Oracle Enterprise Manager Express 访问的端口。
- -e ORACLE_SID=ORCLCDB: 设置 Oracle 实例的 SID(System Identifier),这里设置为 ORCLCDB。
- -e ORACLE_PDB=ORCLPDB: 设置 Oracle 的 Pluggable Database(PDB)的名称,这里设置为 ORCLPDB。
- -e ORACLE_PWD=oracle: 设置 Oracle 系统用户 SYS 和 SYSTEM 的初始密码为 oracle。
- -e ORACLE_EDITION=standard: 设置 Oracle 的版本为标准版(standard),这影响 Oracle 的功能集。
- -e ORACLE_CHARACTERSET=AL32UTF8: 设置 Oracle 数据库的字符集为 AL32UTF8,即 Unicode 字符集。
- -v /docker/oracle19c/oradata/:/opt/oracle/oradata/: 将主机上的 /docker/oracle19c/oradata/ 目录挂载到容器内的 /opt/oracle/oradata/ 目录,用于持久化存储数据库文件。
- –name oracle_19c: 指定容器的名称为 oracle_19c。
- 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连接
相关文章:
Docker容器安装软件(完整版)
文章目录 一、安装Docker1.1 docker 相关的命令1.2 配置镜像加速 二. 安装es2.1 创建网络2.2 拉取镜像2.3 创建挂载点目录2.4 部署单点es,创建es容器2.5 编写elasticsearch.yml2.6 重启es容器2.7 测试Elasticsearch是否安装成功 三. 基于Docker安装Kibana3.1 拉取镜…...
DeepSeek-进阶版部署(Linux+GPU)
前面几个小节讲解的Win和Linux部署DeepSeek的比较简单的方法,而且采用的模型也是最小的,作为测试体验使用是没问题的。如果要在生产环境使用还是需要用到GPU来实现,下面我将以有一台带上GPU显卡的Linux机器来部署DeepSeek。这里还只是先体验单…...
11. Pandas :操作Excel文件(Excel报表的案例研究)
从一个装有各种 Excel 文件的文件夹开始,这些文件需要被整合到 Excel 报表中。 它们包含了虚构的电信运营商在全美各营业厅的套餐(金、银、铜)销售情况。每个月有两个文件,子文件夹 new 中的是新用户,子文件夹 existin…...
Qt开源控件库(qt-material-widgets)的编译及使用
项目简介 qt-material-widgets是一个基于 Qt 小部件的 Material Design 规范实现。 项目地址 项目地址:qt-material-widgets 本地构建环境 Win11 家庭中文版 VS2019 Qt5.15.2 (MSVC2019) 本地构建流程 克隆后的目录结构如图: 直接使用Qt Crea…...
freeswitch(多台服务器级联)
亲测版本centos 7.9系统–》 freeswitch1.10.9本人freeswitch安装路径(根据自己的路径进入)/usr/local/freeswitch/etc/freeswitch使用场景: 使用服务器级联需要双方网络可以ping通,也就是类似局域网内,比如A服务器IP 192.168.1.100 B服务器 192.168.1.101,通过C设备注册…...
【大模型统一集成项目】让 AI 聊天更丝滑:WebSocket 实现流式对话!
🌟 在这系列文章中,我们将一起探索如何搭建一个支持大模型集成项目 NexLM 的开发过程,从 架构设计 到 代码实战,逐步搭建一个支持 多种大模型(GPT-4、DeepSeek 等) 的 一站式大模型集成与管理平台ÿ…...
qt 多进程使用共享内存 ,加速数据读写,进程间通信 共享内存
Summary: 项目中我们有时需要使用共享内存共享数据,这样,数据不用进程IO读写,加进数据加载和落地; 程序退出时,再保存到本地;速度提升数十倍; Part1:QSharedMemory Windows平台下进程间通信…...
OpenHarmony-分布式硬件关键技术
前言: OpenHarmony是一款面向未来万物互联场景的操作系统,其设计采用了分布式架构。那么OpenHarmony相比于传统操作系统有哪些关键的分布式技术,本文主要介绍分布式硬件设计理念、跨端分布式硬件核心挑战、以及OpenHarmony分布式硬件平台关键…...
idea超级AI插件,让 AI 为 Java 工程师
引言 用户可在界面中直接通过输入自然语言的形式描述接口的需求,系统通过输入的需求自动分析关键的功能点有哪些,并对不确定方案的需求提供多种选择,以及对需求上下文进行补充,用户修改确定需求后,系统会根据需求设…...
深入Flink运行时架构:JobManager与TaskManager协作全解析
深入Flink运行时架构:JobManager与TaskManager协作全解析 一、Flink分布式执行模型剖析 1.1 运行时架构全景视图 核心组件交互关系: #mermaid-svg-tMSqMSsKP6vwUZi3 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-s…...
OSPF-单区域的配置
一、单区域概念: 单区域OSPF中,整个网络被视为一个区域,区域ID通常为0(骨干区域)。所有的路由器都在这个区域内交换链路状态信息。 补充知识点: OSPF为何需要loopback接口: 1.Loopback接口的…...
每日OJ_牛客_过桥_贪心+BFS_C++_Java
目录 牛客_过桥_贪心BFS 题目解析 C代码 Java代码 牛客_过桥_贪心BFS 过桥 描述: dd被困在了一个迷幻森林,现在她面前有一条凶险的大河,河中央有n个神奇的浮块,浮块按1∼n1顺序标号,但两两并不相接&…...
K8S学习之基础二十七:k8s中daemonset控制器
k8s中DaemonSet控制器 DaemonSet控制器确保k8s集群中,所有节点都运行一个相同的pod,当node节点增加时,新节点也会自动创建一个pod,当node节点从集群移除,对应的pod也会自动删除。删除DaemonSet也会删除创建的pod。…...
79.ScottPlot的MVVM实现 C#例子 WPF例子
如何通过数据绑定在 WPF 中实现动态图像显示 在 WPF 应用程序中,通过数据绑定实现动态图像显示是一种高效且优雅的方式。以下是一个简单的教程,展示如何使用 ScottPlot.WPF 库和 MVVM 模式来实现这一功能。 第一步:安装必要的 NuGet 包 首…...
第44天:WEB攻防-PHP应用SQL盲注布尔回显延时判断报错处理增删改查方式
时间轴: 44天知识点总结: 1.mysql的增删改查功能 2.根据源码sql语句的三种sql注入:布尔盲注(必须要有回显) 延时判断(都可以) 报错回显(必须要有报错处理机制) 3.两个cms…...
说说人工智能
1. 人工智能与机器学习 核心进展 人工智能(AI)与机器学习(ML)已从理论研究全面渗透到实际应用中。深度学习模型如Transformer架构在自然语言处理(NLP)和计算机视觉(CV)领域实现突破…...
懒加载(Lazy Loading):原理、实现与优化策略
懒加载(Lazy Loading) 是一种优化网页性能的技术,主要用于延迟加载非关键资源(如图片、视频、脚本等),直到它们真正需要被使用时才加载。懒加载可以显著减少页面初始加载时间,降低带宽消耗&…...
HTML5(Web前端开发笔记第一期)
p.s.这是萌新自己自学总结的笔记,如果想学习得更透彻的话还是请去看大佬的讲解 目录 三件套标签标题标签段落标签文本格式化标签图像标签超链接标签锚点链接默认链接地址 音频标签视频标签 HTML基本骨架综合案例->个人简介列表表格表单input标签单选框radio上传…...
Linux学习(十五)(故障排除(ICMP,Ping,Traceroute,网络统计,数据包分析))
故障排除是任何 Linux 用户或管理员的基本技能。这涉及识别和解决 Linux 系统中的问题。这些问题的范围包括常见的系统错误、硬件或软件问题、网络连接问题以及系统资源的管理。Linux 中的故障排除过程通常涉及使用命令行工具、检查系统和应用程序日志文件、了解系统进程&#…...
SVN 拉取,文件冲突 解决办法
情景 svn 在拉取代码时 提示 已跳过,其余有冲突 ,警告至少还有一个的文件处于冲突状态 导致文件拉取失败 一、原因 版本库和本地工作副本之间存在文件冲突,导致文件无法正常拉取。 二、 Terminal 窗口解决办法 1.查看冲突文件 在 Termin…...
【实战ES】实战 Elasticsearch:快速上手与深度实践-8.1.1基于ES的语义搜索(BERT嵌入向量)
👉 点击关注不迷路 👉 点击关注不迷路 👉 点击关注不迷路 文章大纲 基于Elasticsearch与BERT的语义搜索架构设计与实战1. 传统搜索的局限性与语义搜索的崛起1.1 关键词搜索 vs 语义搜索1.2 Elasticsearch向量检索演进历程关键版本特性对比 2.…...
【Node.js】--- win11安装 Node.js
在编程的艺术世界里,代码和灵感需要寻找到最佳的交融点,才能打造出令人为之惊叹的作品。而在这座秋知叶i博客的殿堂里,我们将共同追寻这种完美结合,为未来的世界留下属于我们的独特印记。 【Node.js】--- win11安装 Node.js 开发环…...
【技海登峰】Kafka漫谈系列(九)SpringBoot整合Kafka多数据源配置
【技海登峰】Kafka漫谈系列(九)SpringBoot整合Kafka多数据源配置 Kafka官方提供了基于Java实现的客户端kafka-clients,用于提供生产者和消费者的基本能力。在此基础上,Spring for Apache Kafka(spring-kafka)项目对该原生客户端进行了基于Spring特性的抽象与封装,实现了基…...
【MySQL篇】基本查询实战OJ
本篇是基于上篇mysql基本查询的一些OJ题 MySQL基本查询传送门:【MySQL篇】MySQL基本查询详解-CSDN博客 批量插入数据_牛客题霸_牛客网 insert语句 insert into actor values (1,PENELOPE,GUINESS,2006-02-15 12:34:33); insert into actor values (2,NICK,WAHLBER…...
侯捷 C++ 课程学习笔记:C++内存管理机制
内存管理从平地到万丈高楼 内存管理入门(Memory Management 101) 需要具有动态分配并使用memory(存储(器),(计算机的)内存),使用过C标准库的容器࿰…...
java后端开发day31--集合进阶(一)-----Collection集合List集合数据结构1
(以下内容全部来自上述课程) 1.集合体系结构 List系列集合:添加的元素是有序、可重复、有索引。 Set系列集合:添加的元素是无序、不重复、无索引。 2.Collection集合 Collection是单列集合的祖宗接口(不可直接创建…...
TA学习之路——1.4 MVP矩阵运算
1.变换矩阵的意义 1.将3D物体转化到2D平面 2.为各个空间的运用做准备 2.MVP矩阵代表什么 MVP矩阵分别是模型(Model)、观察(View)、投影(Projecttion)三个矩阵。我们顶点坐标起始于局部空间(Local Space)…...
Java数据结构第二十期:解构排序算法的艺术与科学(二)
专栏:Java数据结构秘籍 个人主页:手握风云 目录 一、常见排序算法的实现 1.1. 直接选择排序 1.2. 堆排序 1.3. 冒泡排序 1.4. 快速排序 一、常见排序算法的实现 1.1. 直接选择排序 每⼀次从待排序的数据元素中选出最小的⼀个元素,存放在…...
【机器学习】主成分分析法(PCA)
【机器学习】主成分分析法(PCA) 一、摘要二、主成分分析的基本概念三、主成分分析的数学模型五、主成分分析法目标函数公式推导(梯度上升法求解目标函数)六、梯度上升法求解目标函数第一个主成分七、求解前n个主成分及PCA在数据预…...
perl、python、tcl语法中读写Excel的模块
perl、python、tcl语法中读写Excel的模块 perl、python、tcl语法中存在读写xls和xlsx格式的模块分别有: python 读取 Excel xlrd:支持传统 .xls 格式的读取 pandas:通过 read_excel() 方法支持 .xls 和 .xlsx 格式 写入 …...
libwebsockets实现异步websocket客户端,服务端异常断开可重连
libwebsockets websocket客户端基本流程网上都有,我只额外优化了重连机制。 在服务器异常断开时不触发LWS_CALLBACK_CLOSED或LWS_CALLBACK_CLIENT_CONNECTION_ERROR,导致无法自动重连 通过定时检查链接是否可写入判断链接是否有效 // 判断wsi是否可用if …...
CAD球体密堆积3D插件V2.0
插件介绍 CAD球体密堆积3D插件V2.0版本可在AutoCAD内建立球体堆积模型,插件采取模拟球体在重力作用下的堆积行为,可生成超密堆积的几何模型及进行堆积过程的动态展示。 插件优化重力堆积物理引擎,新增堆积可视化界面,可直观查看…...
【Linux】线程池、单例模式、死锁
线程池 一.线程池1.日志和策略模式2.线程池1.Task.hpp2.Thread.hpp3.ThreadPool.hpp4.ThreadPool.cc 二.线程安全与重入问题三.线程安全的单例模式1.饿汉模式2.懒汉模式3.懒汉模式线程池1.ThreadPool.hpp2.ThreadPool.cc 四.死锁的概念1.死锁2.死锁的四个必要条件3.避免死锁 五…...
AI+视频监控电力巡检:EasyCVR视频中台方案如何赋能电力行业智能化转型
随着电力行业的快速发展,电力设施的安全性、稳定性和运维效率变得至关重要。传统视频监控系统在实时性、智能化及多系统协同等方面面临严峻挑战。EasyCVR视频中台解决方案作为一种先进的技术手段,在电力行业中得到了广泛应用,为电力设施的监控…...
centos8.0系统部署zabbix6.0监控
centos8.0系统部署zabbix6.0监控 一、部署过程1、确认系统版本2、主机基础环境设置3、安装MySQL 8.0数据库3.1 安装MySQL 8.0仓库3.2 安装软件3.3 设置root用户密码3.4 创建zabbix数据库,授权用户 4、配置zabbix6.0仓库5、安装zabbix服务端软件6、导入zabbix数据表7…...
江科大51单片机笔记【12】AT24C02(I2C总线)
写在前言 此为博主自学江科大51单片机(B站)的笔记,方便后续重温知识 在后面的章节中,为了防止篇幅过长和易于查找,我把一个小节分成两部分来发,上章节主要是关于本节课的硬件介绍、电路图、原理图等理论知识…...
电脑一直重启怎么解决 原因及解决方法
电脑一直重启的故障状态,不仅影响电脑的正常使用,还可能导致数据丢失或损坏。那么,电脑一直重启是什么原因呢?又该如何解决呢?下面将为大家介绍电脑一直重启的常见原因和解决方法,帮助您恢复电脑的正常工作…...
内网安全防护新思路 —— HFish + ELK 与 T-Pot 全面蜜罐系统比较分析
在当前网络安全环境日益复杂的背景下,企业和组织面临着来自外部与内部的多种威胁。为了更好地了解攻击者行为、捕获恶意活动并及时响应,部署蜜罐(Honeypot)系统已成为提升内网安全防护的重要手段。本文将重点介绍两种内网蜜罐防护…...
「 机器人 」扑翼飞行器通过总气动力控制四自由度运动方法
一、前言 在扑翼飞行中,总气动力(Total Aerodynamic Force)是指扑翼在运动过程中受到的所有空气动力作用的合力。它是由以下两种主要力的合成结果: 1. 升力(Lift, ):垂直于空气流方向的力,用于支持飞行器(或生物)的重量。 2. 阻力(Drag, ):平行于空气流方向的力,…...
写了一个二叉树构造函数和画图函数,方便debug
代码 class TreeNode(object):def __init__(self, val, leftNone, rightNone):self.val valself.left leftself.right rightdef construct_tree(nodes):if not nodes:return Noneroot TreeNode(nodes[0])queue [root]index 1while index < len(nodes):node queue.p…...
【prompt实战】知乎问题解答专家
本文原创作者:姚瑞南 AI-agent 大模型运营专家,先后任职于美团、猎聘等中大厂AI训练专家和智能运营专家岗;多年人工智能行业智能产品运营及大模型落地经验,拥有AI外呼方向国家专利与PMP项目管理证书。(转载需经授权&am…...
元组(Tuple)详解——c#
在C#中,元组(Tuple) 是一种轻量级的数据结构,用于将多个值组合成一个单一的对象。元组非常适合在不需要定义新类或结构体的情况下,临时存储和传递多个相关的值。 C# 中的元组有两种形式: 传统元组…...
Maven工具基础知识(一)
第一章、Maven概述 一、概述 官网地址:Welcome to Apache Maven – Maven Maven是一个基于Java的项目管理工具,专注于项目构建、依赖管理和项目信息标准化。其核心目标 是简化开发流程,通过标准化项目结构和自动化构建流程ÿ…...
AI模型的构建过程是怎样的(下)
你好,我是舒旻。 上节课,我们讲了一个模型构建的前 2 个环节,模型设计和特征工程。今天,我们继续来讲模型构建的其他 3 个环节,说说模型训练、模型验证和模型融合中,算法工程师的具体工作内容,以及 AI 产品经理需要掌握的重点。 模型训练 模型训练是通过不断训练、验证…...
力扣hot100_二叉树
二叉树的建立与遍历 #include <iostream> #include <vector> #include <queue> using namespace std;// 定义二叉树节点 struct TreeNode {int val;TreeNode* left;TreeNode* right;TreeNode(int x) : val(x), left(nullptr), right(nullptr) {} };// 函数&…...
如何制作Windows系统盘、启动盘?(MediaCreationTool_22H2)
文章目录 每日一句正能量前言一、准备工作二、制作启动盘后记 每日一句正能量 每个在你生命里出现的人,都有原因。喜欢你的人给你温暖关心。你喜欢的人让你学会爱和付出,不喜欢你的人让你自省成长。你不喜欢的人教会你宽容尊重,没有人是偶然出…...
分布式光伏发电的发展现状与前景
分布式光伏发电的发展现状与前景 1、分布式光伏发电的背景2、分布式光伏发电的分类2.1、集中式光伏发电2.1.1、特点、原则2.1.2、优点2.1.3、缺点 2.2、分布式光伏发电2.2.1、特点、原则2.2.2、优点2.2.3、缺点 2.3、对比 3、分布式光伏发电的现状4、分布式光伏发电的应用场景4…...
【AI大模型智能应用】Deepseek生成测试用例
在软件开发过程中,测试用例的设计和编写是确保软件质量的关键。 然而,软件系统的复杂性不断增加,手动编写测试用例的工作量变得异常庞大,且容易出错。 DeepSeek基于人工智能和机器学习,它能够依据软件的需求和设计文…...
NVIDIA k8s-device-plugin源码分析与安装部署
在《kubernetes Device Plugin原理与源码分析》一文中,我们从源码层面了解了kubelet侧关于device plugin逻辑的实现逻辑,本文以nvidia管理GPU的开源github项目k8s-device-plugin为例,来看看设备插件侧的实现示例。 一、Kubernetes Device Pl…...
面向联邦学习隐私保护的同态加密库优化算法研究
面向联邦学习隐私保护的同态加密库优化算法研究 一、引言 联邦学习作为一种新兴的分布式机器学习范式,允许各参与方在不共享原始数据的前提下协同训练模型,有效解决了数据孤岛和隐私保护问题。同态加密作为实现联邦学习隐私保护的关键技术之一,能够在密文上直接进行特定运算…...