目錄
MySql 客户端程序
mysql
mysqladmin
mysqlcheck
mysqldump
mysqlimport
mysqlshow
mysqlslap
参考资料
首頁 資料庫 mysql教程 MySQL 5.5/5.6——概述 MySQL 客户端程序_MySQL

MySQL 5.5/5.6——概述 MySQL 客户端程序_MySQL

Jun 01, 2016 pm 01:48 PM

bitsCN.com

MySql 客户端程序

  • mysql
  • mysqladmin
  • mysqlcheck
  • mysqldump
  • mysqlimport
  • mysqlshow
  • mysqlslap
  • 参考资料

 

mysql


mysql 是一个可以输入行的 SQL 外壳,输入行可以编辑。它支持交互和非交互。当使用交互式,查询结果以一个 ASCII 表格式来显示。当使用非交互时(例如,作为过滤),查询结果以 tab 分隔格式显示。输出格式可以通过命令行选项来改变。如下所示:

shell> mysql db_name;
登入後複製

shell> mysql --user=user_name --password=your_password db_name;
登入後複製

键入 ;/g/G,按回车,语句就会执行。

也可以执行一个脚本文件的语句,如下所示:

shell> mysql db_name  output.tab
登入後複製
在 Unix 系统上,mysql 客户端会向历史文件写入执行语句记录。

 

mysqladmin


mysqladmin 是在客户端执行管理性的操作。可以使用该命令检查服务配置和当前状态,以及创建和删除数据库等等。如下所示:

shell> mysqladmin [options] command [command-arg] [command [command-arg]] ...
登入後複製

 

mysqlcheck


mysqlcheck 执行表的维护:检查、修复、优化,或分析。

当执行该命令时,表会被锁定(只读),因此,对其他会话来说不可用。表维护操作很耗时,特别是对大表来说。如果你使用  --databases--all-databases 选项来处理一个或多个数据库的所有表,mysqlcheck 可能会花很长时间。

mysqlcheckmyisamchk,但是运行不同。主要的不同是,mysqlcheck 只有当 mysqld 服务运行时才能使用,而 myisamchk 不需要。使用 mysqlcheck 的好处是不用停止服务就可以执行表维护。

mysqlcheck 以方便的方式使用 SQL 语句 CHECK TABLEREPAIR TABLEANALYZE TABLEOPTIMIZE TABLE。确定你想执行哪个语句,之后,该语句发送给服务器来执行。

MyISAM 存储引擎支持所有四种维护操作,因此,mysqlcheck 可以被用于在 MyISAM 表上执行任何的一个。其他存储引擎不能全支持。此时,会显示错误信息。例如,若 test.t 是一个 MEMORY 表,检查会产生如下结果:

shell> mysqlcheck test t
登入後複製
test.t
登入後複製
note : The storage engine for the table doesn't support check
登入後複製

调用 mysqlcheck 一般有三个方式:

shell> mysqlcheck [options] db_name [tbl_name ...]
登入後複製
shell> mysqlcheck [options] --databases db_name ...
登入後複製
shell> mysqlcheck [options] --all-databases
登入後複製

如果没有在 db_name 后指定任何表名,或使用 --databases--all-databases 选项,那么将检查整个数据库。

与其他客户端程序相比,mysqlcheck 有一个的特别功能。通过重新命名为二进制可以改变检查表的默认行为。如果你期望你有个默认修复表的工具,那么你只需复制 mysqlcheck,并重新命名为 mysqlrepair,或用符号连接。如果调用 mysqlrepair,它就会修复表。

 

mysqldump


mysqldump 最初是 Igor Romanenko 编写的备份程序。为了备份来转储(dump)一个数据库或数据库集合,传输到另一个 SQL 服务(不必是 MySQL 服务)。转储典型地包含创建表,填充表的 SQL 语句,或两者同时。mysqldump 也用来产生 CSV 文件,其他分隔文本,或 XML 格式。

将MySQL数据库转储到一个文件(例如SQL语句或tab分隔符文本文件)的客户程序。

mysqldump 要求至少 SELECT 权限(用来转储表),SHOW VIEW 权限(用来转储视图),以及 LOCK TABLES 权限(如果没有使用 --single-transaction 选项)。

如果备份,但所有表都是 MyISAM 表,可以考虑 mysqlhotcopy,因为,它可以更快地完成备份和恢复。

调用 mysqldump 有三个方式:

shell> mysqldump [options] db_name [tbl_name ...]
登入後複製
shell> mysqldump [options] --databases db_name ...
登入後複製
shell> mysqldump [options] --all-databases
登入後複製

如果没有在 db_name 后指定任何表名,或使用 --databases--all-databases 选项,那么将转储整个数据库。

默认情况下,mysqldump 不会转储 INFORMATION_SCHEMA 数据库。但可以在命令行显式指定。在 MySQL 5.5 之前,mysqldump 会忽略 INFORMATION_SCHEMA 数据库,即便你在命令行显式指定。

mysqldump 不会转储 performance_schema 数据库。

MySQL 5.5.25 之前的版本,mysqldump 不会转储 general_logslow_query_log 表。MySQL 5.5.25 的转储包含重新创建这些表的语句,这样,重新加载转储文件后,它们不会丢失。日志表的内容不会被转储。

mysqldump 也不会转储 MySQL Cluster ndbinfo 信息数据库。

mysqldump 选项列表,请执行 "mysqldump --help"

 

mysqlimport


mysqlimport 为 LOAD DATA INFILE SQL 语句提供一个命令行接口。如下所示:

shell> mysqlimport [options] db_name textfile1 [textfile2 ...]
登入後複製

在命令行上指定的每个 textfile,mysqlimport 从文件名去掉扩展名,并使用该结果来确定表名,将其导入到文件内容。例如,名为 patient.txt、patient.text,所有的 patient 将被导入到一个名为 patient 的表。

 

mysqlshow


mysqlshow 用来快速查看已存在的数据库,及其表,列或索引。

mysqlshow 为很多 SQL SHOW 语句提供了一个命令行接口。如下所示:

shell> mysqlshow [options] [db_name [tbl_name [col_name]]]
登入後複製
  • 若没指定数据库,则显示所有数据库。
  • 若没指定表,则显示数据库中所有的表。
  • 若没指定列,则显示表的所有列和类型。

可以在参数中使用通配符(*、?、%、_)。

 

mysqlslap


mysqlslap 是诊断程序,用于模拟客户端加载,并报告每个阶段的时间。如果是多客户端正在访问服务,那么该命令很有用。如下所示:

shell> mysqlslap [options]
登入後複製

 

参考资料


  • MySQL dev http://dev.mysql.com/doc/

MySQL 5.5/5.6——概述 MySQL 客户端程序_MySQL

bitsCN.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前 By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

減少在Docker中使用MySQL內存的使用 減少在Docker中使用MySQL內存的使用 Mar 04, 2025 pm 03:52 PM

減少在Docker中使用MySQL內存的使用

如何使用Alter Table語句在MySQL中更改表? 如何使用Alter Table語句在MySQL中更改表? Mar 19, 2025 pm 03:51 PM

如何使用Alter Table語句在MySQL中更改表?

mysql無法打開共享庫怎麼解決 mysql無法打開共享庫怎麼解決 Mar 04, 2025 pm 04:01 PM

mysql無法打開共享庫怎麼解決

在 Linux 中運行 MySQl(有/沒有帶有 phpmyadmin 的 podman 容器) 在 Linux 中運行 MySQl(有/沒有帶有 phpmyadmin 的 podman 容器) Mar 04, 2025 pm 03:54 PM

在 Linux 中運行 MySQl(有/沒有帶有 phpmyadmin 的 podman 容器)

什麼是 SQLite?全面概述 什麼是 SQLite?全面概述 Mar 04, 2025 pm 03:55 PM

什麼是 SQLite?全面概述

在MacOS上運行多個MySQL版本:逐步指南 在MacOS上運行多個MySQL版本:逐步指南 Mar 04, 2025 pm 03:49 PM

在MacOS上運行多個MySQL版本:逐步指南

哪些流行的MySQL GUI工具(例如MySQL Workbench,PhpMyAdmin)是什麼? 哪些流行的MySQL GUI工具(例如MySQL Workbench,PhpMyAdmin)是什麼? Mar 21, 2025 pm 06:28 PM

哪些流行的MySQL GUI工具(例如MySQL Workbench,PhpMyAdmin)是什麼?

如何為MySQL連接配置SSL/TLS加密? 如何為MySQL連接配置SSL/TLS加密? Mar 18, 2025 pm 12:01 PM

如何為MySQL連接配置SSL/TLS加密?

See all articles