技术文章和资源

技术文章(时间排序)

热门类别

Python PHP MySQL JDBC Linux

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

linuxmysqldatabase

简介

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 服务器、创建和管理数据库和表以及操作数据的示例命令,以及用于安全备份和修复的其他实用程序。了解这些实用程序之间的差异将帮助您更有效、更高效地使用它们。


相关文章