Heim  >  Artikel  >  Datenbank  >  Was ist die Methode zum Bereitstellen des MySQL-Dienstes in Docker?

Was ist die Methode zum Bereitstellen des MySQL-Dienstes in Docker?

WBOY
WBOYnach vorne
2023-05-26 22:56:041317Durchsuche

Schritt 0: Ziehen Sie das offizielle MySQL-Image vom Docker-Hub ab

docker pull mysqldocker pull mysql

然后就是进入漫长的等待,当然如果你配置了镜像加速器,速度会快那么一丢丢

第一步:使用docker images命令查看镜像

Was ist die Methode zum Bereitstellen des MySQL-Dienstes in Docker?

你会看到我们这里已经有了mysql的的镜像

第二步:启动我们的mysql的镜像,创建一个mysql的容器

使用命令:docker run -d --name mysql -p 3307:3306 -e mysql_root_password=123456 mysql

解释一下这里的参数:

-d表示在后台运行,不随当前命令行窗口的退出而退出

--name给容器起一个别名,以后可以通过这个别名管理此容器

-p 3307:3307把宿主机的3307端口映射到mysql容器的3306端口

-e mysql容器的环境配置

mysql_root_password=123456   指定mysql的密码,用户名默认为root,注意如果没有指定密码,会启动失败

第三步:查看我们已经启动的mysql容器

使用命令:docker ps

Was ist die Methode zum Bereitstellen des MySQL-Dienstes in Docker?

可以看到,我们的mysql的的的的容器已经跑起来了,dockeer给mysql的的的的容器分配了一个容器的编号,便于我们管理,还显示我们设置的端口映射情况

这个时候有的老哥可能会想,虽然mysql的的的的容器欢快的跑起来了,但是你丫只告诉我们端口,我们怎么知道它的ip呢,我信你个鬼你的老头子坏得很。

不不不。我们可以使用docker inspect -f ='{{。networksettings.ipaddress}}'5fef288f221f命令查看容器的ip,注意最后直接写要查看的容器的id即可,网上那些人坏得很,还给你加一个,导致你很郁闷,就照我这样准没错

还有一点需要注意的是:要是想在外部连接我们的mysql容器,进行远程管理的话,需要配置容器里mysql的root账户的主机,把它改成一个通配符%,就可以让任意主机连接我们的mysql的了,具体方法如下:

进入mysql容器:使用的docker exec命令,-it是参数,bash表示创建一个交互界面

Was ist die Methode zum Bereitstellen des MySQL-Dienstes in Docker?

登录mysql服务器:使用的root用户登录mysql,在输入密码之后,我们可以看到已经进去了mysql

Was ist die Methode zum Bereitstellen des MySQL-Dienstes in Docker?

使用show数据库; 命令查看数据库(注意不要忘了最后的分号中,mysql的命令都要有分号)

Was ist die Methode zum Bereitstellen des MySQL-Dienstes in Docker?

可以看到,我们的数据库都列了出来,然后使用mysql; 命令进入mysql的这个数据库(是不是很绕口,哈哈哈,这里的mysql的数据库是指的这一个数据库,好吧我可能还是没说明白)

然后使用show tables; 命令列出所有的表

Was ist die Methode zum Bereitstellen des MySQL-Dienstes in Docker?

可以看到,有好多个表,这都是mysql的的配置,不用去关注,我们只需要修改一个用户表即可

使用sql命令:update user set host ='%'where user ='root';

Dann müssen Sie natürlich lange warten, wenn Sie den Image-Beschleuniger konfigurieren schneller verloren

Schritt 1: Verwenden Sie den Docker-Images-Befehl, um das Bild anzuzeigen

Docker Wie wird der MySQL-Dienst bereitgestellt in

Sie werden sehen, dass wir hier bereits ein MySQL-Image haben

Schritt 2: Starten Sie unser MySQL-Image und erstellen Sie einen MySQL-Container

Was ist die Methode zum Bereitstellen des MySQL-Dienstes in Docker?Verwenden Sie den Befehl: docker run -d --name mysql -p 3307:3306 -e mysql_root_password=123456 mysql

Erklären Sie hier die Parameter: -d bedeutet, dass im Hintergrund ausgeführt wird, nicht mit dem aktuellen Befehlszeilenfenster Exit und Exit

– Name gibt dem Container einen Alias, und Sie können den Container in Zukunft über diesen Alias ​​verwalten

-p 3307: 3307 ordnet den 3307-Port des Hosts dem 3306-Port des MySQL-Containers zu

🎜 -e die Umgebung des MySQL-Containers. Konfigurieren Sie 🎜🎜mysql_root_password=123456. Geben Sie das Passwort für MySQL an. Beachten Sie, dass der Start fehlschlägt, wenn das Passwort nicht angegeben wird 🎜Schritt 3: Sehen Sie sich den von uns gestarteten MySQL-Container an🎜🎜🎜 Verwenden Sie den Befehl: docker ps🎜🎜Was ist die Methode zum Bereitstellen des MySQL-Dienstes in Docker🎜🎜Sie können sehen, dass unser MySQL-Container bereits ausgeführt wird. Dockeer weist dem MySQL-Container eine Containernummer zu, was für uns bequem zu verwalten ist. Das ist auch der Fall zeigt die von uns festgelegte Portzuordnung an 🎜🎜Manchmal denken vielleicht, dass der MySQL-Container zwar gut läuft, Sie uns aber nur den Port mitgeteilt haben. Woher wissen wir, dass die IP-Adresse Ihres alten Mannes sehr schlecht ist? 🎜🎜Nein, nein, nein. Wir können docker inspect -f ='{{ verwenden. networksettings.ipaddress}}'5fef288f221f Befehl zum Überprüfen der IP-Adresse des Containers. Beachten Sie, dass Sie am Ende einfach die ID des Containers schreiben, den Sie überprüfen möchten. Diese Personen im Internet sind sehr schlecht und fügen ein für Sie, was Sie sehr deprimieren wird, also folgen Sie einfach, ich habe absolut Recht🎜🎜Eine weitere Sache, die Sie beachten sollten: Wenn wir unseren MySQL-Container extern für die Fernverwaltung verbinden möchten, müssen wir den Host des Root-Kontos konfigurieren von MySQL im Container und ändern Sie es in ein Platzhalterzeichen %. Die spezifische Methode ist wie folgt: 🎜🎜 Geben Sie den MySQL-Container ein: Verwenden Sie den Docker-Exec-Befehl, -it ist der Parameter, Bash bedeutet, eine interaktive Schnittstelle zu erstellen 🎜🎜Wie wird der MySQL-Dienst in Docker bereitgestellt? 🎜🎜Melden Sie sich beim MySQL-Server an: Melden Sie sich mit dem Root-Benutzer bei MySQL an und geben Sie das Passwort ein. Danach können wir sehen, dass MySQL eingegeben wurde🎜🎜Bereitstellen des MySQL-Dienstes in Docker Was ist die Methode?🎜🎜Verwenden Sie den Befehl show Database;, um die Datenbank anzuzeigen (achten Sie darauf, dies nicht zu tun). Vergessen Sie das letzte Semikolon, alle MySQL-Befehle müssen ein Semikolon haben Methode zum Bereitstellen des MySQL-Dienstes in Docker" />🎜🎜Sie können sehen, dass unsere Datenbanken aufgelistet sind, und dann den Befehl mysql; verwenden. Geben Sie die MySQL-Datenbank ein (ist das nicht eine komplizierte Sache, hahaha, die MySQL-Datenbank hier bezieht sich darauf?). Datenbank, okay, vielleicht habe ich es immer noch nicht klargestellt)🎜🎜Dann verwenden Sie den Befehl show tables; um alle Tabellen aufzulisten🎜 🎜Wie wird der MySQL-Dienst in Docker bereitgestellt?“ />🎜🎜Sie können sehen, es gibt viele Tabellen, das sind alles MySQL-Konfigurationen, kein Grund zur Aufmerksamkeit, wir brauchen nur Um eine Benutzertabelle zu ändern🎜🎜Verwenden Sie den SQL-Befehl: <code>update user set host ='%'where user ='root' ;</code>🎜🎜Einige Schüler melden möglicherweise einen Fehler mit diesem Befehl. Der Grund dafür ist Ihr MySQL hat möglicherweise mehrere Root-Benutzer. Verwenden Sie daher den folgenden Befehl: 🎜<pre class=update user set host =&#39;%&#39;其中user =&#39;root&#39;和host =&#39;localhost&#39;;🎜Nachdem Sie die obigen Schritte konfiguriert haben, können Sie die Verbindung testen. Wenn es funktioniert, herzlichen Glückwunsch, Sie haben Glück. 🎜🎜Herzlichen Glückwunsch, wenn Sie keine Verbindung herstellen können, da das von Ihnen heruntergeladene MySQL-Image MySQL8 ist. 🎜🎜Möglicherweise tritt die folgende Fehlermeldung auf: An diesem Punkt ist die Konfiguration abgeschlossen. Verwenden Sie zum Beenden den Befehl „exit“. 🎜🎜Testen Sie die Remote-Verbindung🎜🎜🎜🎜🎜🎜Schritt 4: Importieren Sie Daten in unseren MySQL-Container🎜🎜🎜Obwohl unser MySQL-Container ausgeführt wird, sind darin keine Daten enthalten. Sie können die folgende Methode verwenden. Importieren Sie die Datenbank in MySQL Docker🎜🎜Importieren Sie zuerst die Datei in den Container, gefolgt von cp, dem Pfad der SQL-Datei, die Sie importieren möchten.🎜
#docker cp **.sql mysql:/root/
进入容器
#docker exec -it mysql bash
将文件导入数据库
# mysql -uroot -p 【数据库名】 < ***.sql

mysql -h localhost -u root -p(进入mysql下面)
create database abc;(创建数据库)
show databases;(就可看到所有已经存在的数据库,以及刚刚创建的数据库abc)
use abc;(进入abc数据库下面)
show tables;(产看abc数据库下面的所有表,空的)
source /var/test.sql(导入数据库表)
show tables;(查看abc数据库下面的所有表,就可以看到表了)
desc pollution;(查看表结构设计)
select * from pollution;
exit(或者ctrl + c)退出mysql
">

Das obige ist der detaillierte Inhalt vonWas ist die Methode zum Bereitstellen des MySQL-Dienstes in Docker?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen