在前端开发中,MySQL 是不可或缺的工具。而 Docker 又是现代化开发必备的工具。本篇文章将介绍使用 Docker 执行 MySQL 常用操作,并提供一些示例代码。
准备工作
首先,需要安装 Docker 和 Docker Compose。可以在 Docker 官网 下载并安装。
在本教程中,我们将使用一个 docker-compose.yml
文件,其中包含 MySQL 镜像和 MySQL Workbench 镜像。以下是 docker-compose.yml
文件的内容:
version: '3.1' services: mysql: image: mysql:latest container_name: mysql environment: MYSQL_ROOT_PASSWORD: root MYSQL_DATABASE: test MYSQL_USER: test MYSQL_PASSWORD: test ports: - "3306:3306" volumes: - ./data:/var/lib/mysql workbench: image: mysql-workbench:latest container_name: workbench environment: DISPLAY: host.docker.internal:0 QT_SCALE_FACTOR: 0.5 GDK_DPI_SCALE: 0.5 GDK_SCALE: 2 PULSE_SERVER: tcp:localhost:53713 PULSE_COOKIE_DATA: "cookie data" volumes: - /tmp/.X11-unix:/tmp/.X11-unix
其中,mysql
服务为我们提供 MySQL 镜像。我们指定 MySQL 的 root 用户的密码为 root
,数据库名为 test
,用户名和密码也均为 test
。将 MySQL 端口映射到 Docker 宿主机的 3306
端口上。配置了 volumes,它将 MySQL 数据库的数据保存在 ./data
目录中。
workbench
服务为我们提供 MySQL Workbench 镜像。我们需要配置 Workbench 的环境,在此我们将它的显示比例设为 0.5
、缩放比例设为 2
、设置 X 部分配置并将其映射到 Docker 宿主机上的 /tmp/.X11-unix
目录中。
使用以下命令启动容器:
$ docker-compose up
MySQL 常用操作
1. 登录 MySQL
使用以下命令进入 MySQL:
$ docker exec -it mysql mysql -uroot -p
注意使用 docker-compose.yml
文件中设置的密码登录。
如果成功登录 MySQL,您将看到 MySQL 客户端的命令提示符:
mysql>
2. 创建数据库
使用以下命令在 MySQL 中创建一个名为 test_db
的数据库:
mysql> CREATE DATABASE test_db;
3. 创建表和插入数据
使用以下命令创建一个名为 users
的表,并插入一些数据:
mysql> USE test_db; mysql> CREATE TABLE users ( -> id INT(11) NOT NULL AUTO_INCREMENT, -> name VARCHAR(255) NOT NULL, -> email VARCHAR(255) NOT NULL, -> PRIMARY KEY (id) -> ); mysql> INSERT INTO users (name, email) -> VALUES -> ('Tom', 'tom@example.com'), -> ('Jerry', 'jerry@example.com');
4. 查询数据
使用以下命令查询 users
表中的数据:
mysql> SELECT * FROM users;
将返回以下结果:
+----+-------+-------------------+ | id | name | email | +----+-------+-------------------+ | 1 | Tom | tom@example.com | | 2 | Jerry | jerry@example.com | +----+-------+-------------------+
5. 更新数据
使用以下命令更新 users
表中的一行数据:
mysql> UPDATE users SET name='John' WHERE id=1;
6. 删除数据
使用以下命令删除 users
表中的一行数据:
mysql> DELETE FROM users WHERE id=1;
7. 导出数据
使用以下命令将 users
表导出为 users.csv
文件:
mysql> SELECT * INTO OUTFILE '/var/lib/mysql-files/users.csv' -> FIELDS TERMINATED BY ',' -> LINES TERMINATED BY '\n' -> FROM users;
8. 导入数据
使用以下命令将导出的 users.csv
文件导入到 users
表中:
mysql> LOAD DATA INFILE '/var/lib/mysql-files/users.csv' -> INTO TABLE users -> FIELDS TERMINATED BY ',' -> LINES TERMINATED BY '\n';
总结
本篇文章介绍了如何使用 Docker 执行 MySQL 常用操作,并提供了一些示例代码。经常使用 Docker 包装 MySQL,能够保持环境的一致性,从而更方便地进行开发和测试。
如果您有任何建议或想法,请在评论中留言。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/65acc84dadd4f0e0ff65b362