如何从Linux命令行直接执行MySQL/MariaDB查询

2023年 4月 29日 57.9k 0

如果您负责管理数据库服务器,则可能需要不时运行查询并仔细检查它。 虽然您可以从MySQL/MariaDB Shell执行此操作,但此技巧将使您可以直接使用Linux命令行执行MySQL/MariaDB查询,并将输

如果您负责管理数据库服务器,则可能需要不时运行查询并仔细检查它。 虽然您可以从MySQL/MariaDB Shell执行此操作,但此技巧将使您可以直接使用Linux命令行执行MySQL/MariaDB查询,并将输出保存到文件中以供以后检查(这在查询返回时特别有用。 很多记录)。

让我们来看一些直接从命令行运行查询的简单示例,然后再转向更高级的查询。

要查看服务器上的所有数据库,可以发出以下命令:

[558idc@localhost ~/www.558idc.com]$mysql -u root -p -e "show databases;"

+--------------------+
| Database |
+--------------------+
| idc_db |
| information_schema |
| 558idc_db |
| mysql |
| performance_schema |
| xxx_db |
+--------------------+

如何从Linux命令行直接执行MySQL/MariaDB查询

接下来,要在数据库558idc_db 中创建一个名为linuxceshi的数据库表,请运行以下命令:

[558idc@localhost ~/www.558idc.com]$mysql -u root -p -e "USE 558idc_db ; CREATE TABLE linuxceshi(idc_id INT NOT NULL AUTO_INCREMENT, idc_title VARCHAR(100) NOT NULL, idc_author VARCHAR(40) NOT NULL, submissoin_date DATE, PRIMARY KEY (idc_id));"

如何从Linux命令行直接执行MySQL/MariaDB查询

查询下表建好没有

[558idc@localhost ~/www.558idc.com]$mysql -u root -p -e "use 558idc_db; desc linuxceshi;"

+-----------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------------+--------------+------+-----+---------+----------------+
| idc_id | int(11) | NO | PRI | NULL | auto_increment |
| idc_title | varchar(100) | NO | | NULL | |
| idc_author | varchar(40) | NO | | NULL | |
| submissoin_date | date | YES | | NULL | |
+-----------------+--------------+------+-----+---------+----------------+

如何从Linux命令行直接执行MySQL/MariaDB查询

我们将使用以下命令,并将输出通过管道传递到tee命令,后跟要在其中存储输出的文件名。

为了进行说明,我们将使用一个名为558idc数据库的linuxceshi表。请注意,系统将提示您输入数据库用户的密码:

[558idc@localhost ~/www.558idc.com]$mysql -u root -p -e "use 558idc_db; desc linuxceshi;" | tee 558idc_chaxun.txt

如何从Linux命令行直接执行MySQL/MariaDB查询

借助cat命令查看查询结果。

[558idc@localhost ~/www.558idc.com]$mysql -u root -p -e "use 558idc_db; desc linuxceshi;" | tee 558idc_chaxun.txt
Enter password:
Field Type Null Key Default Extra
idc_id int(11) NO PRI NULL auto_increment
idc_title varchar(100) NO NULL
idc_author varchar(40) NO NULL
submissoin_date date YES NULL
[558idc@localhost ~/www.558idc.com]$cat 558idc_chaxun.txt
Field Type Null Key Default Extra
idc_id int(11) NO PRI NULL auto_increment
idc_title varchar(100) NO NULL
idc_author varchar(40) NO NULL
submissoin_date date YES NULL

如何从Linux命令行直接执行MySQL/MariaDB查询

使用纯文本文件的查询结果,您可以使用其他命令行实用工具更轻松地处理记录。

小结

本文已经分享了一点Linux技巧,作为系统管理员,您可以在自动执行日常Linux任务或更轻松地执行它们方面发现有用的信息。

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论