Docker peut-il installer Oracle ?
docker peut installer Oracle. Méthode d'installation : 1. Extrayez l'image Oracle officielle et utilisez « docker images » pour afficher l'image ; 2. Après avoir démarré le conteneur, utilisez « docker exec -it oracle11g bash » pour entrer dans le conteneur et modifier les variables d'environnement ; "sqlplus /nolog" Entrez simplement la ligne de commande Oracle.
L'environnement d'exploitation de ce tutoriel : système linux7.3, docker version 19.03, ordinateur Dell G3.
Docker peut-il installer Oracle ?
Vous pouvez utiliser Docker pour déployer Oracle, et cela présente de nombreux avantages. Cela peut non seulement réduire le temps d’installation, mais également permettre un déploiement rapide.
Les avantages de l'utilisation de docker pour le déploiement sont les suivants :
(1) Simplifiez la configuration une fois construit et emballé, il peut être utilisé comme environnement de test, environnement de production ou environnement de pré-production, ce qui peut économiser. beaucoup de liens de test. Par exemple, un serveur peut tester plusieurs versions sans attendre.
(2) peut résoudre la difficulté des développeurs à déployer l'environnement. Par exemple, cela peut prendre une demi-journée à un nouveau collègue qui vient d'arriver pour installer l'environnement, mais il est beaucoup plus pratique d'exécuter directement un conteneur déjà configuré. .
(3) Isolation des applications et intégration du serveur. Un serveur peut utiliser Docker pour déployer plusieurs ensembles de services, et l'isolation est très élevée (sauf pour les machines virtuelles).
(4) Pour le développement, après le déploiement, il peut être exécuté partout pour faciliter le développement et le débogage.
(5) Cela peut réduire l'utilisation des ressources. Par rapport aux machines virtuelles, cela permet d'économiser beaucoup de ressources inutiles. La perte d'isolement est plus que compensée par d'autres avantages.
(6) Pour l'exploitation et la maintenance, il peut rapidement augmenter la capacité et réduire le taux d'utilisation d'origine
(7) Chaque petit service peut être regroupé. Docker utilise relativement peu de ressources et peut être démarré sur un seul serveur. plus d'E/S sur le serveur que les autres produits.
(8) Peut être déployé sur plusieurs plates-formes
Les exemples sont les suivants :
L'installation d'Oracle sous Linux est très gênante et je pense que tout le monde sera confronté à divers pièges. Afin de l'installer une fois, il est également pratique d'exporter directement l'image pour la transplanter et l'utiliser sur diverses plates-formes à l'avenir, j'ai donc choisi de l'installer avec docker
Tirez l'image
Recherchez Oracle sur DockerHub pour trouver Oracle. image officielle, adresse : https://hub.docker.com/
Notez que si vous utilisez la commande docker pull oraclelinux
ici, vous ne pouvez pas extraire l'image car elle n'a pas la dernière version. étiqueter. Par conséquent, son numéro de version ne peut être spécifié que manuellement docker pull oraclelinux
命令,是拉取不到镜像的,因为它没有 latest 标签。因此,只能手动指定它的版本号
例如 docker pull oraclelinux
使用 官方镜像 下载速度非常慢,因此,我们可以使用阿里镜像 docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
在 dockerHub 上可以搜到 (第二个),可以参考这个配置使用
docker images
查看镜像,确认已经下载完成
启动容器
- 默认启动容器的方式
docker run -d -it -p 1521:1521 --name oracle11g --restart=always registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
- 持久化启动的方式
docker run -d -it -p 1521:1521 --name oracle --restart=always --mount source=oracle_vol,target=/home/oracle/app/oracle/oradata registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
查看启动的线程 netstat -tulnp
查看运行状态 docker ps -a
Par exemple, docker pull oraclelinux
L'utilisation de l'image officielle pour télécharger est très lente, nous pouvons donc utiliser l'image Ali
docker pull Registry.cn-hangzhou.aliyuncs.com/helowin /oracle_11g


images Docker
pour afficher l'image et confirmer que le téléchargement est terminé🎜
- La manière par défaut de démarrer le conteneur🎜
docker run -d - it -p 1521:1521 --name oracle11g --restart=always Registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
- Comment démarrer la persistance🎜
docker run - d -it -p 1521:1521 --name oracle --restart=always --mount source=oracle_vol,target=/home/oracle/app/oracle/oradata Registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
🎜Afficher les discussions démarrées
netstat -tulnp
🎜
docker ps -a
🎜🎜🎜Configuration de l'environnement du conteneur
Entrez le conteneur docker exec -it oracle11g bash
docker exec -it oracle11g bash
切换到 root 用户 su root
,密码为 helowin
docker容器配置环境变量不是在 /etc/profile
中,容器启动不会走这个文件。
可以将环境变量的配置设置在 /home/oracle/.bashrc
文件下,这样可以省略掉软连接的创建 ln -s $ORACLE_HOME/bin/sqlplus /usr/bin
编辑环境变量 vi /home/oracle/.bashrc
,在文件最后加入以下命令
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2 export ORACLE_SID=helowin export PATH=$ORACLE_HOME/bin:$PATH
wq
保存并退出。然后使用 source /home/oracle/.bashrc
刷新环境变量,并使之生效
进入 oracle 命令行
使用 sqlplus /nolog
进入oracle命令行
使用 “操作系统认证” 的方式,登录oracle conn / as sysdba
如果直接使用默认的 root 用户登录,会报登录失败。这里必须使用 su - oracle
命令,将当前用户切换到 oracle,然后在执行登录命令
ORA-12514, TNS:listener does not currently know of service requested in connect descriptor
这个错误是由于数据库名用错了
su - oracle sqlplus /nolog conn / as sysdba select instance_name from v$instance; show user;
使用上述命令查出来的,就是所有可用的 “数据库名” 和 “用户名”
阿里的这个镜像,所有的密码都是统一的 helowin
su root
, le mot de passe est helowin
La variable d'environnement de configuration du conteneur Docker n'est pas dans /etc/profile code>, ce fichier ne sera pas pris au démarrage du conteneur.
/home/oracle/.bashrc
, qui peut omettre la création de liens symboliques ln -s $ORACLE_HOME/bin/sqlplus /usr/bin
Modification de la variable d'environnement
vi /home/oracle/.bashrc
, ajoutez la commande suivante à la fin du fichier
# 打开防火墙 systemctl start firewalld # 查询端口状态 firewall-cmd --query-port=1521/tcp # 永久性开放端口 firewall-cmd --permanent --zone=public --add-port=1521/tcp # 重启防火墙 firewall-cmd --reload firewall-cmd --query-port=1521/tcp
wq
Enregistrez et quittez. Utilisez ensuite source /home/oracle/.bashrc
pour actualiser les variables d'environnement et les rendre efficaces
Entrez la ligne de commande oracle
Utilisez sqlplus /nolog
pour entrer dans l'oracle ligne de commande
conn / as sysdba
Si vous vous connectez directement en utilisant l'utilisateur root par défaut, un échec de connexion sera signalé. Ici, vous devez utiliser la commande su - oracle
pour basculer l'utilisateur actuel vers oracle, puis exécuter la commande de connexion


helowin
🎜🎜L'utilisateur du système a l'autorité DBA, mais n'a pas l'autorité SYSDBA. Ce compte est généralement utilisé pour gérer la base de données. 🎜 L'utilisateur sys est le compte ayant la plus haute autorité dans la base de données Oracle, avec les autorisations "SYSDBA" et "SYSOPER", et n'est généralement pas autorisé à se connecter de l'extérieur 🎜🎜🎜🎜🎜Configurer le pare-feu 🎜🎜Le pare-feu doit autorisez le port 1521 et les outils de gestion de bases de données externes peuvent être connectés 🎜rrreee🎜🎜🎜🎜 Apprentissage recommandé : "🎜tutoriel vidéo docker🎜"🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Les étapes pour mettre à jour une image Docker sont les suivantes: Tirez la dernière étiquette d'image Nouvelle image Supprimer l'ancienne image pour une balise spécifique (facultative) Redémarrez le conteneur (si nécessaire)

Quatre façons de quitter Docker Container: Utilisez Ctrl D dans le terminal de conteneur Entrez la commande d'exit dans le terminal de conteneur Utilisez Docker Stop & lt; contener_name & gt; Commande utilise docker kill & lt; contener_name & gt; commande dans le terminal hôte (sortie de force)

Méthodes de copie de fichiers en hôtes externes dans Docker: Utilisez la commande docker cp: exécuter docker cp [options] & lt; Container Path & gt; & lt; Host Path & gt;. Utilisation de volumes de données: créez un répertoire sur l'hôte et utilisez le paramètre -v pour monter le répertoire dans le conteneur lors de la création du conteneur pour obtenir la synchronisation de fichiers bidirectionnels.

Comment redémarrer le conteneur Docker: Obtenez l'ID de conteneur (Docker PS); Arrêtez le conteneur (docker stop & lt; contener_id & gt;); Démarrer le conteneur (docker start & lt; contener_id & gt;); Vérifiez que le redémarrage réussit (Docker PS). Autres méthodes: Docker Compose (redémarrage Docker-Compose) ou API Docker (voir Docker Documentation).

Comment utiliser Docker Desktop? Docker Desktop est un outil pour exécuter des conteneurs Docker sur les machines locales. Les étapes à utiliser incluent: 1. Installer Docker Desktop; 2. Démarrer Docker Desktop; 3. Créer une image Docker (à l'aide de DockerFile); 4. Build Docker Image (en utilisant Docker Build); 5. Exécuter Docker Container (à l'aide de Docker Run).

Méthode de visualisation du processus docker: 1. Commande Docker CLI: Docker PS; 2. Commande CLI Systemd: Docker d'état SystemCTL; 3. Docker Compose CLI Commande: Docker-Compose PS; 4. Process Explorer (Windows); 5. / Répertoire proc (Linux).

Vous pouvez interroger le nom du conteneur Docker en suivant les étapes: répertorier tous les conteneurs (Docker PS). Filtrez la liste des conteneurs (à l'aide de la commande grep). Obtient le nom du conteneur (situé dans la colonne "Noms").

Dépannage des étapes pour la construction d'image Docker échouée: cochez la syntaxe Dockerfile et la version de dépendance. Vérifiez si le contexte de construction contient le code source et les dépendances requis. Affichez le journal de construction pour les détails d'erreur. Utilisez l'option - cibler pour créer une phase hiérarchique pour identifier les points de défaillance. Assurez-vous d'utiliser la dernière version de Docker Engine. Créez l'image avec --t [Image-Name]: Debug Mode pour déboguer le problème. Vérifiez l'espace disque et assurez-vous qu'il est suffisant. Désactivez SELINUX pour éviter les interférences avec le processus de construction. Demandez de l'aide aux plateformes communautaires, fournissez Dockerfiles et créez des descriptions de journaux pour des suggestions plus spécifiques.
