用户登录
用户注册

分享至

如何在Linux中执行MySQL/MariaDB查询

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

让我们来看一些直接从命令行运行查询的简单示例,然后再转向更高级的查询。要查看服务器上的所有数据库,可以发出以下命令:

[linuxidc@localhost?~/www.linuxidc.com]$mysql?-u?root?-p?-e?"show?databases;"
+--------------------+
|?Database???????????|
+--------------------+
|?idc_db?????????????|
|?information_schema?|
|?linuxidc_db????????|
|?mysql??????????????|
|?performance_schema?|
|?xxx_db?????????????|
+--------------------+

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

[linuxidc@localhost?~/www.linuxidc.com]$mysql?-u?root?-p?-e?"USE?linuxidc_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));"

查询下表建好没有

[linuxidc@localhost?~/www.linuxidc.com]$mysql?-u?root?-p?-e?"use?linuxidc_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????|????????????????|
+-----------------+--------------+------+-----+---------+----------------+

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

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

[linuxidc@localhost?~/www.linuxidc.com]$mysql?-u?root?-p?-e?"use?linuxidc_db;?desc?linuxceshi;"?|?tee?linuxidc_chaxun.txt

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

[linuxidc@localhost?~/www.linuxidc.com]$mysql?-u?root?-p?-e?"use?linuxidc_db;?desc?linuxceshi;"?|?tee?linuxidc_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
[linuxidc@localhost?~/www.linuxidc.com]$cat?linuxidc_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技巧,作为系统管理员,您可以在自动执行日常Linux任务或更轻松地执行它们方面发现有用的信息。

软件
前端设计
程序设计
Java相关