📅  最后修改于: 2023-12-03 15:26:20.253000             🧑  作者: Mango
在容器环境下使用 MySQL 数据库的方式有很多,其中一种方法是使用 Docker。在本文中,我们将介绍如何在 Docker 中显示 MySQL 数据库并执行 SQL 查询。
首先,您需要安装 Docker。您可以在Docker的官方网站上找到安装说明。
在命令行中输入以下命令创建一个新的 MySQL 容器:
$ docker run --name my-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql
这个命令会创建一个名为 my-mysql 的容器,然后将 MySQL 的 root 密码设置为 my-secret-pw。
等待 MySQL 容器启动,或者使用以下命令检查容器的状态:
$ docker ps
如果容器已经启动,则可以继续下一步。
在命令行中输入以下命令连接到 MySQL 容器:
$ docker exec -it my-mysql mysql -uroot -p
这个命令会连接到 my-mysql 容器,并使用 root 用户身份登录 MySQL。
输入 MySQL root 用户的密码(在这里是 my-secret-pw),然后按 Enter 键。
Enter password:
如果密码正确,您应该会看到以下消息:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 5
Server version: 5.7.22 MySQL Community Server (GPL)
[...]
现在您已经成功连接到 MySQL 服务器了。
在 MySQL 命令提示符下,输入以下命令显示可用的数据库:
SHOW DATABASES;
这将返回 MySQL 服务器中所有可用的数据库列表。示例输出如下:
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)
在这个例子中,我们有四个可用的数据库:information_schema、mysql、performance_schema 和 sys。
选择一个数据库:
USE mysql;
这个命令会选择 MySQL 服务器中的 mysql 数据库。
在 mysql 数据库中,输入以下命令:
SELECT * FROM user;
这会返回 mysql 数据库中 user 表的所有行。示例输出如下:
+-----------+--------------+-----------------------+-------------+-------------+-------------+-------------+-------------+-----------+-------------+---------------+--------------+-----------+------------+---------------------+------------+------------+--------------+------------+-----------------------+------------------+------------------+---------------+-----------------+---------------+----------------+---------------------+--------------------+---------------------+-----------------------+------------------------+--------------------------+----------------+---------------------------+------------------------+------------------------+------------------------+---------------------+-----------------+-----------------------+---------------------+---------------------+-------------------+---------------+
| Host | User | Password | Select_priv | Insert_priv | Update_priv | Delete_priv | Create_priv | Drop_priv | Reload_priv | Shutdown_priv | Process_priv | File_priv | Grant_priv | References_priv | Index_priv | Alter_priv | Show_db_priv | Super_priv | Create_tmp_table_priv | Lock_tables_priv | Execute_priv | Repl_slave_priv | Repl_client_priv | Create_view_priv | Show_view_priv | Create_routine_priv | Alter_routine_priv | Create_user_priv | ssl_type | ssl_cipher | x509_issuer | x509_subject | max_questions | max_updates | max_connections | max_user_connections | plugin | authentication_string | password_expired | password_last_changed | password_lifetime_days | account_locked_until | Create_role_priv |
+-----------+--------------+-----------------------+-------------+-------------+-------------+-------------+-------------+-----------+-------------+---------------+--------------+-----------+------------+---------------------+------------+------------+--------------+------------+-----------------------+------------------+------------------+---------------+-----------------+---------------+----------------+---------------------+--------------------+---------------------+-----------------------+------------------------+--------------------------+----------------+---------------------------+------------------------+------------------------+------------------------+---------------------+-----------------+-----------------------+---------------------+---------------------+-------------------+---------------+
| localhost | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | | | | | 0 | 0 | 0 | 0 | mysql_native_password | *E0D55CCDF27C6C6C2DEC6EC12CC498F76EEEFC2D | N | 2022-02-27 07:14:35 | NULL | N |
| localhost | mysql.sys | *THISISNOTAVALIDPASSWORDHASH34582348 | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | | | | | 0 | 0 | 0 | 0 | mysql_native_password | *THISISNOTAVALIDPASSWORDHASH34582348 | N | 2022-02-27 07:14:35 | NULL | N |
+-----------+--------------+-----------------------+-------------+-------------+-------------+-------------+-------------+-----------+-------------+---------------+--------------+-----------+------------+---------------------+------------+------------+--------------+------------+-----------------------+------------------+------------------+---------------+-----------------+---------------+----------------+---------------------+--------------------+---------------------+-----------------------+------------------------+--------------------------+----------------+---------------------------+------------------------+------------------------+------------------------+---------------------+-----------------+-----------------------+---------------------+---------------------+-------------------+---------------+
如果您要执行其他 SQL 查询,请输入相应的命令。
使用 Docker 显示 MySQL 数据库是一种相对简单的方法。通过执行几个命令,您可以创建 MySQL Docker 容器,连接到该容器并执行 SQL 查询。而使用 Docker 还可以避免在本地机器上安装 MySQL,这也许是一个好处。
以上是显示数据库 MySQL Docker - SQL 的介绍,希望对程序员们有所帮助。