如何通过命令行连接到 MySQL 数据库
已发表: 2021-05-31在这篇文章中,我想与您逐步分享 MySQL 连接到数据库命令行指南,您可以按照该指南使用命令行连接到本地主机或远程服务器上的 MySQL 数据库。
在我们查看 MySQL 通过命令行连接到数据库的最佳方式之前,我想首先概述可用于连接到 MySQL 数据库的其他选项。
当您在 DigitalOcean 等云服务器上管理数据库时,从命令行连接到 MySQL 数据库可能是一项有用的技能。
在 DigitalOcean 上,您需要使用 DigitalOcean SSH 控制台登录 MySQL 数据库。 这篇文章是开始学习如何连接到数据库命令行技巧的好地方。
MySQL 数据库连接工具
首先,您需要了解 MySQL 安装在 localhost 服务器和远程服务器上,并且可以使用 PhpMyAdmin 或其他 MySQL 数据库管理工具等工具进行访问,这些工具包括以下内容:
- PhpMyAdmin
- SQLyog
- 海蒂SQL
- DB Forge Studio for MySQL
- MySQL 工作台
- MySQL 的 Toad Edge
- Navicat for MySQL
- 续集临
如果您只需要在共享主机环境中连接到 MySQL,您可以使用安装在大多数 Web 主机上的 PhpMyAdmin 来访问和管理 MySQL 数据库。
一些托管环境还带有用于创建和管理数据库的 MySQL 数据库管理向导。
MySQL 连接数据库命令行
要通过命令行连接到 MySQL 数据库,您需要按照以下步骤进行快速总结:
- 在 Windows 或 Mac 上打开终端或命令行
- 确保导航到根文件夹,或者最好使用将在正确文件夹中打开的 bash 之类的终端。
- 对于 Windows,您需要确保正确设置 MySQL 的环境变量,以避免出现“MySQL 未被识别为内部或外部命令”的错误。 如果您在本地主机上,则在开始连接数据库之前,您需要确保服务器正在运行,如下图所示:
- 当终端打开时,一切设置正确,您现在应该通过命令提示符键入命令以连接到 MySQL,如下所示: mysql -u 用户名 -p 更改用户名和密码以匹配您的登录详细信息。 当您在终端上运行此命令时,它会提示您输入数据库的密码。 默认情况下localhost环境,用户名通常为root,密码为空:
- 连接后,您应该会看到上图中显示的消息,表明您已通过命令行连接到 MySQL 数据库。
- 您可以继续执行多个命令行命令以在 MySQL 数据库上运行更改。 例如,您可以从 show databases 命令开始,该命令将显示服务器上的所有数据库,如下图所示: 我的
- 以下是其他常见的 MySQL 命令行:
访问监控:mysql -u [用户名] -p; (将提示输入密码)
显示所有数据库:显示数据库;
访问数据库:mysql -u [用户名] -p [数据库](会提示输入密码)
创建新数据库:create database [database];
选择数据库:使用[数据库];
确定正在使用的数据库:select database();
显示所有表格:显示表格;
显示表结构:describe [table];
列出表上的所有索引:show index from [table];
创建具有列的新表:CREATE TABLE [table] ([column] VARCHAR(120), [another-column] DATETIME);
添加列: ALTER TABLE [table] ADD COLUMN [column] VARCHAR(120);
添加具有唯一、自动递增 ID 的列: ALTER TABLE [table] ADD COLUMN [column] int NOT NULL AUTO_INCREMENT PRIMARY KEY;
插入记录:INSERT INTO [table] ([column], [column]) VALUES ('[value]', '[value]');
用于日期时间输入的 MySQL 函数:NOW()
选择记录:SELECT * FROM [table];
解释记录:EXPLAIN SELECT * FROM [table];
选择部分记录:SELECT [column], [another-column] FROM [table];
统计记录:SELECT COUNT([column]) FROM [table];
统计和选择分组记录:SELECT *, (SELECT COUNT([column]) FROM [table]) AS count FROM [table] GROUP BY [column];
选择特定记录:SELECT * FROM [table] WHERE [column] = [value]; (选择器:<、>、!=;将多个选择器与 AND、OR 组合)
选择包含[value]的记录:SELECT * FROM [table] WHERE [column] LIKE '%[value]%';
选择以 [value] 开头的记录: SELECT * FROM [table] WHERE [column] LIKE '[value]%';
选择以 val 开头并以 ue 结尾的记录: SELECT * FROM [table] WHERE [column] LIKE '[val_ue]';
选择一个范围:SELECT * FROM [table] WHERE [column] BETWEEN [value1] and [value2];
选择自定义订单且仅限制:SELECT * FROM [table] WHERE [column] ORDER BY [column] ASC LIMIT [value]; (顺序:DESC、ASC)
更新记录:UPDATE [table] SET [column] = '[updated-value]' WHERE [column] = [value];
删除记录:DELETE FROM [table] WHERE [column] = [value];
从表中删除所有记录(不删除表本身):DELETE FROM [table]; (这也会重置自动生成的列(如 id 列)的递增计数器。)
删除一个表中的所有记录:truncate table [table];
删除表列:ALTER TABLE [table] DROP COLUMN [column];
删除表:DROP TABLE [table];
删除数据库:DROP DATABASE [database];
自定义列输出名称:SELECT [column] AS [custom-column] FROM [table];
导出数据库转储(更多信息在这里):mysqldump -u [username] -p [database] > db_backup.sql
使用 –lock-tables=false 选项锁定表(更多信息在这里)。
导入数据库转储(更多信息在这里): mysql -u [username] -p -h localhost [database] < db_backup.sql
注销:退出;
您可以从这些 MySQL 命令备忘单的源代码中查看更多命令
结论
在这篇文章中,我与您分享了从命令行连接到 MySQL 数据库的方法,并逐步向您展示。 这篇文章的内容应该是你用来从命令行连接到 MySQL 数据库的命令是 MySQL -u username -p。 您应该始终记住数据库的用户名和密码,才能使该命令正常工作。
最后,如果您在 localhost 环境中,请不要忘记用户名主要是“root”并且用户名是空的。