Chcete si vyzkoušel MySQL, ale nechcete ji instalovat do počítače. Použijte docker. Zde je příklad pro použití docker-compose.
docker-compose.yml
version: "3" services: mysql: image: mysql:latest container_name: mysql volumes: - db_data:/var/lib/mysql environment: MYSQL_ROOT_PASSWORD: password ports: - 3306:3306 volumes: db_data:
Následně stačí zadat příkaz docker-compose up
.
Starting mysql ... done Attaching to mysql mysql | 2024-05-03 06:30:36+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.4.0-1.el8 started. mysql | 2024-05-03 06:30:37+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql' mysql | 2024-05-03 06:30:37+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.4.0-1.el8 started. mysql | '/var/lib/mysql/mysql.sock' -> '/var/run/mysqld/mysqld.sock' mysql | 2024-05-03T06:30:37.256338Z 0 [System] [MY-015015] [Server] MySQL Server - start. mysql | 2024-05-03T06:30:37.467296Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.4.0) starting as process 1 mysql | 2024-05-03T06:30:37.485612Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started. mysql | 2024-05-03T06:30:37.740098Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended. mysql | 2024-05-03T06:30:38.070405Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed. mysql | 2024-05-03T06:30:38.070435Z 0 [System] [MY-013602] [Server] Channel mysql_main configured to support TLS. Encrypted connections are now supported for this channel. mysql | 2024-05-03T06:30:38.075708Z 0 [Warning] [MY-011810] [Server] Insecure configuration for --pid-file: Location '/var/run/mysqld' in the path is accessible to all OS users. Consider choosing a different directory. mysql | 2024-05-03T06:30:38.103540Z 0 [System] [MY-010931] [Server] /usr/sbin/mysqld: ready for connections. Version: '8.4.0' socket: '/var/run/mysqld/mysqld.sock' port: 3306 MySQL Community Server - GPL. mysql | 2024-05-03T06:30:38.365722Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Bind-address: '::' port: 33060, socket: /var/run/mysqld/mysqlx.sock
Základní práce s kontejnerem v dockeru
Vytvoření a spuštění kontejneru podle definice v souboru docker-compose.yml
(název kontejneru je mysql)
docker-compose up
Zobrazení logů
docker logs mysql
Spuštění bashe v kontejneru
docker exec -it mysql bash
Okopírování všech souborů z určitého adresáře do kontejneru
docker cp dir_name/. container:/home/dir_name
Připojení se do databáze z bashe
mysql -u root -p
Připojení se do databáze přímo z dockeru
docker exec -it mysql mysql -p
Práce v mysql konzoli
Ukončení
\q
Help
\h
Spuštění skriptu ze souboru
.\ /home/dir_name/file_name
Zobrazení existujících databázís
show databases;
Přepnutí se do určité databáze
use db_name;
Zobrazení existujících tabulek v databázi
show tables;
Smazání databáze
drop databae db_name;