如何在 Linux 中使用 MySQL 客户端和相关实用程序


简介

MySQL 是一款开源的关系型数据库管理系统(RDBMS),流行超过二十年。它广泛用于 Linux 系统,用于 Web 服务器解决方案和独立应用程序。本文将概述最常用的 MySQL 实用程序,包括 mysql 和 mysqladmin,以及一些关于如何使用它们的示例。值得注意的是,本文中的解释也适用于 MariaDB,这是 MySQL 的一个流行分支,由原始开发人员创建,因为担心 MySQL 可能不再开源,并打算保持与 MySQL 的高度兼容性。

安装和使用 MySQL

安装 MySQL 时,会提供两个软件包:mysql-server,其中包含服务器和连接到服务器的所有实用程序,以及mysql-client,其中仅包含连接到位于其他位置的服务器的实用程序。无论您选择哪个软件包,都将有几个以“mysql”开头的命令。

连接到 MySQL 服务器

mysql 命令是命令行客户端,也是连接到 MySQL 服务器的主要二进制文件。它提供了一个 shell,我们可以在其中与 MySQL 或 MariaDB 服务器交互。大多数 Linux 发行版要求您以 root身份运行这些实用程序。

$ sudo mysql -u root
Welcome to the MySQL monitor.  Commands end with ; or \g.
...
mysql>

使用此命令,我们可以以交互模式访问 shell。我们可以连续输入 SQL 语句来与我们的数据库交互,使用相同的连接。

创建和管理数据库和表

例如,我们可以查询系统数据库以获取系统中的所有用户:

mysql> select host, user from mysql.user;
+-----------+------------------+
| host      | user             |
+-----------+------------------+
| %         | root             |
...
+-----------+------------------+
6 rows in set (0.00 sec)

我们还可以使用 MySQL 特定的语句,如USE和 SHOW TABLES

mysql> SHOW TABLES;
+---------------------------+
| Tables_in_mysql           |
+---------------------------+
| columns_priv              |
...
+---------------------------+
33 rows in set (0.01 sec)

管理任务

mysqladmin 是一种用于在服务器上执行管理任务的工具。它是一个非交互式客户端,会提示我们想要执行的操作的命令。例如,我们可以使用 mysqladmin 创建和删除数据库:

$ sudo mysqladmin create the_database
$
$ sudo mysqladmin drop the_database
...
Do you really want to drop the 'the_database' database [y/N] y
Database "the_database" dropped
$

其他实用程序

在本节中,我们将探讨一些可用于管理和维护 MySQL 数据库的其他实用程序。这些实用程序包括“mysqldump”、“mysqlrepair”和“mysqlimport”。mysqldump 是一种强大的数据库备份工具,可用于转储单个数据库或数据库集合以进行备份或传输到另一个 SQL 服务器。“mysqlrepair”是用于修复 MySQL 数据库中损坏表的实用程序,可用于修复MyISAMInnoDB表。最后,“mysqlimport”是用于将文本文件中的数据导入到 MySQL 表中的工具,其中每一行表示一个新记录,每个字段由制表符分隔。

mysqldump

mysqldump 是用于创建数据库备份的实用程序。它可用于下载数据库或数据库集合以进行备份或传输到另一个 SQL 服务器。

$ mysqldump -u root -p db_name > db_name.sql

mysqlrepair

mysqlrepair 用于修复 MySQL 数据库中损坏的表。它可用于修复 MyISAM 和 InnoDB 表。

$ mysqlrepair -u root -p db_name table_name

mysqlimport

mysqlimport 用于将文本文件中的数据导入到 MySQL 表中。文本文件必须具有特定的格式,其中每一行表示一个新记录,每个字段由制表符分隔。

$ mysqlimport -u root -p db_name table_name.txt

结论

总之,MySQL 是一种功能强大且广泛使用关系型数据库管理系统,非常适合小型和大型应用程序。Linux 上的 MySQL 客户端和相关实用程序允许您连接到 MySQL 服务器、创建和管理数据库和表以及操作数据。本文概述了如何在 Linux 上使用 MySQL 客户端和相关实用程序,包括连接到 MySQL 服务器、创建和管理数据库和表以及操作数据的示例命令,以及用于安全备份和修复的其他实用程序。了解这些实用程序之间的区别将帮助您更有效地使用它们。

更新于: 2023年1月20日

536 次浏览

开启您的职业生涯

通过完成课程获得认证

开始
广告