Kann Docker Oracle installieren?
Docker kann Oracle installieren. Installationsmethode: 1. Rufen Sie das offizielle Oracle-Image ab und verwenden Sie „Docker Images“, um das Image anzuzeigen. 2. Verwenden Sie nach dem Starten des Containers „docker exec -it oracle11g bash“, um den Container aufzurufen und die Umgebungsvariablen zu bearbeiten „sqlplus /nolog“ Geben Sie einfach die Oracle-Befehlszeile ein.
Die Betriebsumgebung dieses Tutorials: Linux7.3-System, Docker-Version 19.03, Dell G3-Computer.
Kann Docker Oracle installieren?
Sie können Docker verwenden, um Oracle bereitzustellen, und es hat viele Vorteile. Dies kann nicht nur die Installationszeit verkürzen, sondern auch eine schnelle Bereitstellung ermöglichen.
Die Verwendung von Docker für die Bereitstellung bietet folgende Vorteile:
(1) Vereinfachen Sie die Konfiguration. Nach einmaligem Erstellen und Verpacken kann es als Testumgebung, Produktionsumgebung oder Vorproduktionsumgebung verwendet werden, was Einsparungen ermöglicht viele Testlinks. Beispielsweise kann ein Server mehrere Versionen testen, ohne warten zu müssen.
(2) kann die Schwierigkeit lösen, die Entwickler bei der Bereitstellung der Umgebung haben. Beispielsweise kann es einen halben Tag dauern, bis ein neuer Kollege, der gerade angekommen ist, die Umgebung installiert, aber es ist viel bequemer, einen bereits konfigurierten Container direkt auszuführen .
(3) Anwendungsisolation und Serverintegration Ein Server kann Docker verwenden, um mehrere Dienste bereitzustellen, und die Isolation ist sehr hoch (mit Ausnahme virtueller Maschinen).
(4) Für die Entwicklung kann es nach der Bereitstellung überall ausgeführt werden, um die Entwicklung und das Debuggen zu erleichtern.
(5) Es kann die Ressourcenauslastung reduzieren und viele unnötige Ressourcen einsparen. Der Verlust der Isolation wird durch andere Vorteile mehr als ausgeglichen.
(6) Für Betrieb und Wartung kann die Kapazität schnell erweitert und die ursprüngliche Auslastung reduziert werden.
(7) Jeder kleine Dienst kann relativ wenig Ressourcen verbrauchen und auf einem Server gestartet werden mehr I/O auf dem Server als andere Produkte.
(8) Kann auf mehreren Plattformen bereitgestellt werden
Beispiele sind wie folgt:
Die Installation von Oracle unter Linux ist sehr mühsam und ich glaube, dass jeder auf verschiedene Fallstricke stoßen wird. Um es einmal zu installieren, ist es auch praktisch, das Image direkt zu exportieren und es in Zukunft auf verschiedenen Plattformen zu verwenden. Daher entscheide ich mich für die Installation mit Docker
Ziehen Sie das Image
Suchen Sie auf DockerHub nach Oracle, um Oracles zu finden Offizielles Bild, Adresse: https://hub.docker.com/
Beachten Sie, dass Sie das Bild nicht abrufen können, wenn Sie hier den Befehl docker pull oraclelinux
verwenden, da es nicht über die neueste Version verfügt Etikett. Daher kann die Versionsnummer nur manuell angegeben werden 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
Zum Beispiel docker pull oraclelinux
Das Herunterladen des offiziellen Bildes ist sehr langsam, daher können wir das Ali-Bild
docker pull Registry.cn-hangzhou.aliyuncs.com/helowin verwenden /oracle_11g


docker images
, um das Bild anzuzeigen und zu bestätigen, dass der Download abgeschlossen wurde🎜
- Die Standardmethode zum Starten des Containers🎜
docker run -d - it -p 1521:1521 --name oracle11g --restart=always Registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
- So starten Sie die Persistenz🎜
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
🎜Gestartete Threads anzeigen
netstat -tulnp
🎜
docker ps -a
🎜🎜🎜In-Container-Umgebungskonfiguration
Geben Sie den Container ein 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
, das Passwort lautet helowin
Die Docker-Container-Konfigurationsumgebungsvariable befindet sich nicht in /etc /profile code>, diese Datei wird beim Start des Containers nicht übernommen.
/home/oracle/.bashrc
festlegen, wodurch die Erstellung von Softlinks ln -s $ORACLE_HOME/bin/sqlplus /usr/bin entfallen kann
Bearbeitungsumgebungsvariable
vi /home/oracle/.bashrc
, fügen Sie den folgenden Befehl am Ende der Datei hinzu
# 打开防火墙 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
Speichern und beenden. Verwenden Sie dann source /home/oracle/.bashrc
, um die Umgebungsvariablen zu aktualisieren und wirksam zu machen.
Geben Sie die Oracle-Befehlszeile ein.
Verwenden Sie sqlplus /nolog
, um das Oracle aufzurufen Befehlszeile
conn / as sysdba
an. Wenn Sie sich direkt mit dem Standard-Root-Benutzer anmelden, wird ein Anmeldefehler gemeldet. Hier müssen Sie den Befehl su - oracle
verwenden, um den aktuellen Benutzer auf Oracle umzustellen, und dann den Anmeldebefehl ausführen


helowin
🎜🎜Der Systembenutzer hat DBA-Berechtigung, aber keine SYSDBA-Berechtigung. Dieses Konto wird normalerweise zur Verwaltung der Datenbank verwendet. 🎜 Der sys-Benutzer ist das Konto mit der höchsten Autorität in der Oracle-Datenbank, mit den Berechtigungen „SYSDBA“ und „SYSOPER“ und darf sich grundsätzlich nicht von außen anmelden. 🎜🎜🎜🎜🎜Konfigurieren Sie die Firewall. 🎜🎜Die Firewall muss Erlauben Sie Port 1521 und externe Datenbankverwaltungstools können verbunden werden 🎜rrreee🎜🎜🎜🎜 Empfohlenes Lernen: „🎜Docker-Video-Tutorial🎜“🎜Das obige ist der detaillierte Inhalt vonKann Docker Oracle installieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen





Die Schritte zur Aktualisierung eines Docker -Images sind wie folgt: Ziehen Sie das neueste Bild -Tag. Neues Bild Löschen Sie das alte Bild für ein bestimmtes Tag (optional) den Container neu (falls erforderlich) neu starten Sie neu (falls erforderlich).

Vier Möglichkeiten zum Beenden von Docker Container: Verwenden Sie Strg D im Befehl Container Terminal ENGEBOT IM Container Terminal verwenden Sie Docker Stop & lt; container_name & gt; Befehl verwenden Sie Docker Kill & lt; container_name & gt; Befehl im Host -Terminal (Force Exit)

Methoden zum Kopieren von Dateien in externen Hosts in Docker: Verwenden Sie den Befehl Docker CP: Docker CP [Optionen] & lt; Containerpfad & gt; & lt; Host -Pfad & gt;. Verwenden von Datenvolumina: Erstellen Sie ein Verzeichnis auf dem Host und verwenden Sie den Parameter -V, um das Verzeichnis in den Container zu montieren, um den Container zu erstellen, um eine bidirektionale Dateisynchronisation zu erreichen.

So starten Sie den Docker -Container neu: Holen Sie sich die Container -ID (Docker PS); Stop den Container (Docker Stop & lt; Container_id & gt;); Starten Sie den Container (Docker start & lt; container_id & gt;); Stellen Sie sicher, dass der Neustart erfolgreich ist (Docker PS). Andere Methoden: Docker Compose (Docker-Compose Neustart) oder Docker-API (siehe Docker-Dokumentation).

Wie benutze ich Docker Desktop? Docker Desktop ist ein Werkzeug zum Ausführen von Docker -Containern auf lokalen Maschinen. Zu den zu verwendenden Schritten gehören: 1.. Docker Desktop installieren; 2. Start Docker Desktop; 3.. Erstellen Sie das Docker -Bild (mit Dockerfile); 4. Build Docker Image (mit Docker Build); 5. Docker -Container ausführen (mit Docker Run).

Docker Process Viewing -Methode: 1. Docker Cli -Befehl: Docker PS; 2. SYSTEMD CLI -Befehl: SystemCTL Status Docker; 3.. Docker Compose CLI Command: Docker-Compose PS; 4. Process Explorer (Windows); 5. /proc -Verzeichnis (Linux).

Sie können den Namen des Docker -Containers abfragen, indem Sie den Schritten folgen: Alle Container auflisten (Docker PS). Filtern Sie die Containerliste (unter Verwendung des GREP -Befehls). Ruft den Containernamen ab (befindet sich in der Spalte "Namen").

Fehlerbehebung Schritte für fehlgeschlagene Docker -Bild Build: Überprüfen Sie die Dockerfile -Syntax und die Abhängigkeitsversion. Überprüfen Sie, ob der Build -Kontext den erforderlichen Quellcode und die erforderlichen Abhängigkeiten enthält. Sehen Sie sich das Build -Protokoll für Fehlerdetails an. Verwenden Sie die Option -Target -Option, um eine hierarchische Phase zu erstellen, um Fehlerpunkte zu identifizieren. Verwenden Sie die neueste Version von Docker Engine. Erstellen Sie das Bild mit--t [Bildname]: Debugg-Modus, um das Problem zu debuggen. Überprüfen Sie den Speicherplatz und stellen Sie sicher, dass dies ausreicht. Deaktivieren Sie Selinux, um eine Störung des Build -Prozesses zu verhindern. Fragen Sie Community -Plattformen um Hilfe, stellen Sie Dockerfiles an und erstellen Sie Protokollbeschreibungen für genauere Vorschläge.
