Heim >Datenbank >MySQL-Tutorial >Detaillierte Erläuterung der Installation der MySQL5.6-Instanz in Docker unter Ubuntu
In diesem Artikel wird hauptsächlich die Methode zur Installation von MySQL5.6 in Docker unter Ubuntu vorgestellt. Freunde, die es benötigen, können sich darauf beziehen.
1. Installieren Sie mysql5.6
docker run mysql:5.6
und alle anderen Projekte sind abgeschlossen und installiert
5.6: Pulling from library/mysql 10a267c67f42: Pull complete c2dcc7bb2a88: Pull complete 17e7a0445698: Pull complete 9a61839a176f: Pull complete d4657fda01d9: Pull complete c5278a445e5d: Pull complete 197c0b76f238: Pull complete f54c5432bac4: Pull complete c26b15abee8a: Pull complete 80dbe6022c18: Pull complete 435678c09612: Pull complete Digest: sha256:84372107beb1de34bd4673049ea61bc35f374a2b4f19fd5a3abd4d0a2a50b715 Status: Downloaded newer image for mysql:5.6 error: database is uninitialized and password option is not specified You need to specify one of MYSQL_ROOT_PASSWORD, MYSQL_ALLOW_EMPTY_PASSWORD and MYSQL_RANDOM_ROOT_PASSWORD
2. Verwenden Sie ein lokales Konto, um einen Ordner zu erstellen, um die MySQL-Konfigurationsdatei in Docker zuzuordnen
Fahren Sie mit der Erstellung von Conf, Data, fort. protokolliert 3 Ordner
Meine Konfiguration ist wie folgt
val@val-linux:~/docker/mysql1$ pwd /home/val/docker/mysql1 val@val-linux:~/docker/mysql1$ ls conf data logs
3. Erstellen Sie einen MySQL-Container
Wechseln Sie zum Root-Konto und geben Sie den Ordner mysql1 ein, den Sie gerade erstellt haben
root@val-linux:/home/val# cd /home/val/docker/mysql1/ root@val-linux:/home/val/docker/mysql1#
Container erstellen und starten
docker run -p 33061:3306 --name mysql1 -v $PWD/conf:/etc/mysql -v $PWD/logs:/logs -v $PWD/data:/mysql_data -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.61 用本地33061端口映射docker的3306端口 给容器命名mysql1 用本地/home/val/docker/mysql1/conf映射mysql的conf 用本地/home/val/docker/mysql1/logs映射mysql的logs 用本地/home/val/docker/mysql1/data映射mysql的mysql_data
Passwort für Root 123456 festlegen
4. Starten Sie den MySQL-Container
docker start mysql11
5. Geben Sie mysql bash
docker exec -it mysql1 env LANG=C.UTF-8 bash
ein, wobei env LANG=C.UTF-8 bash der Docker-Befehlszeile ermöglicht, Chinesisch zu unterstützen
6. Kopieren Sie die Konfigurationsdatei
cp /usr/my.cnf /etc/mysql/my.cnf
7 Melden Sie sich bei MySQL an
mysql -u root -p
Geben Sie Ihr Passwort ein
8. Überprüfen Sie die MySQL-Kodierung
mysql> show variables like '%character%'; +--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | latin1 | | character_set_connection | latin1 | | character_set_database | latin1 | | character_set_filesystem | binary | | character_set_results | latin1 | | character_set_server | latin1 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+ 8 rows in set (0.01 sec)
und stellen Sie fest, dass es sich nicht um UTF-8 handelt Kodierung
9 .MySQL-Kodierung ändern
MySQL beenden, Docker beenden
mysql> exit Bye root@8b83a30acbf8:/# exit exit root@val-linux:/home/val/docker/mysql1#
Meine ändern. cnf-Konfigurationsdatei
root@val-linux:/home/val/docker/mysql1# vim conf/my.cnf
Drücken Sie i, um in den Bearbeitungsmodus zu gelangen
Beitreten
[client] default-character-set=utf8 [mysql] default-character-set=utf8 [mysqld] character-set-server=utf8 1 esc :wq! 保存退出
10. Starten Sie Docker MySQL erneut. Anzeigen der Codierung
root@val-linux:/home/val/docker/mysql1# docker stop mysql1 mysql1 root@val-linux:/home/val/docker/mysql1# docker start mysql1 mysql1 root@val-linux:/home/val/docker/mysql1# docker exec -it mysql1 env LANG=C.UTF-8 bash root@8b83a30acbf8:/# mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 Server version: 5.6.36 MySQL Community Server (GPL) Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> show variables like '%character%'; +--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | latin1 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | latin1 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+ 8 rows in set (0.00 sec)
Datenbank erstellen
mysql> create database rise; Query OK, 1 row affected (0.00 sec) mysql> use rise; Database changed
12. Benutzer erstellen und autorisieren
mysql> grant all privileges on rise.* to val@'%' identified by '123456'; Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec)
% repräsentiert jede IP (IP kann sein angegeben), val ist der Benutzername, 123456 ist das Passwort
Verwandte Empfehlungen:
Eine Docker-basierte Laravel-Anwendung von Grund auf erstellen
So verwenden Sie Docker, um eine PHP-Entwicklungsumgebung bereitzustellen
Ein einfaches Beispiel für die Installation von MySQL mit Docker
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Installation der MySQL5.6-Instanz in Docker unter Ubuntu. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!