1.  mysqlshow 命令提供的信息与某些 SHOW 语句很相似,因此可以从命令行提示符获取数据库和表的信息。

(i)列出服务器所管理的数据库:

root@javis:~$ mysqlshow -p -uroot
Enter password:
+--------------------+
| Databases |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sampdb |
| test |
+--------------------+

(ii)列出数据库里的表:

root@javis:~$ mysqlshow -p -uroot sampdb
Enter password:
Database: sampdb
+-------------+
| Tables |
+-------------+
| absence |
| grade_event |
| member |
| mytable |
| president |
| score |
| student |
+-------------+

(iii) 显示表里的列信息:

root@javis:~$ mysqlshow -p -uroot sampdb student
Enter password:
Database: sampdb Table: student
+------------+------------------+-----------------+------+-----+---------+----------------+---------------------------------+---------+
| Field | Type | Collation | Null | Key | Default | Extra | Privileges | Comment |
+------------+------------------+-----------------+------+-----+---------+----------------+---------------------------------+---------+
| name | varchar(20) | utf8_general_ci | NO | | | | select,insert,update,references | |
| sex | enum('F','M') | utf8_general_ci | NO | | | | select,insert,update,references | |
| student_id | int(10) unsigned | | NO | PRI | | auto_increment | select,insert,update,references | |
+------------+------------------+-----------------+------+-----+---------+----------------+---------------------------------+---------+

(iv) 显示表里的索引信息:

root@javis:~$ mysqlshow -p -uroot --keys sampdb student
Enter password:
Database: sampdb Table: student
+------------+------------------+-----------------+------+-----+---------+----------------+---------------------------------+---------+
| Field | Type | Collation | Null | Key | Default | Extra | Privileges | Comment |
+------------+------------------+-----------------+------+-----+---------+----------------+---------------------------------+---------+
| name | varchar(20) | utf8_general_ci | NO | | | | select,insert,update,references | |
| sex | enum('F','M') | utf8_general_ci | NO | | | | select,insert,update,references | |
| student_id | int(10) unsigned | | NO | PRI | | auto_increment | select,insert,update,references | |
+------------+------------------+-----------------+------+-----+---------+----------------+---------------------------------+---------+
+---------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |
+---------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| student | 0 | PRIMARY | 1 | student_id | A | 6 | | | | BTREE | | |
+---------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+

(v) 显示数据库里所有表的描述性信息:

root@javis:~$ mysqlshow -p -uroot --status sampdb
Enter password:
Database: sampdb
+-------------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+-------------+------------+-----------------+----------+----------------+---------+
| Name | Engine | Version | Row_format | Rows | Avg_row_length | Data_length | Max_data_length | Index_length | Data_free | Auto_increment | Create_time | Update_time | Check_time | Collation | Checksum | Create_options | Comment |
+-------------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+-------------+------------+-----------------+----------+----------------+---------+
| absence | InnoDB | 10 | Compact | 0 | 0 | 16384 | 0 | 0 | 0 | | 2016-07-17 11:49:27 | | | utf8_general_ci | | | |
| grade_event | InnoDB | 10 | Compact | 0 | 0 | 16384 | 0 | 0 | 0 | 2 | 2016-07-17 11:44:18 | | | utf8_general_ci | | | |
| member | InnoDB | 10 | Compact | 0 | 0 | 16384 | 0 | 0 | 0 | 1 | 2016-07-17 10:37:29 | | | utf8_general_ci | | | |
| mytable | InnoDB | 10 | Compact | 0 | 0 | 16384 | 0 | 0 | 0 | 1 | 2016-07-26 20:48:29 | | | utf8_general_ci | | | |
| president | InnoDB | 10 | Compact | 0 | 0 | 16384 | 0 | 0 | 0 | | 2016-07-17 10:20:49 | | | utf8_general_ci | | | |
| score | InnoDB | 10 | Compact | 0 | 0 | 16384 | 0 | 16384 | 0 | | 2016-07-17 11:47:25 | | | utf8_general_ci | | | |
| student | InnoDB | 10 | Compact | 6 | 2730 | 16384 | 0 | 0 | 0 | 10 | 2016-07-17 11:39:17 | | | utf8_general_ci | | | |
+-------------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+-------------+------------+-----------------+----------+----------------+---------+

2. 客户端程序 mysqldump 能够让用户看到CREATE TABLE 语句 (与 SHOW CREATE TABLE 语句很像) 所定义的表结构。

(i) 如果使用 mysqldump 来查看表结构,切记要加上 --no-data 选项,否则看到的内容将是表里的数据

root@javis:~$ mysqldump -p -uroot --no-data sampdb
Enter password:
-- MySQL dump 10.13 Distrib 5.6.31, for Linux (x86_64)
--
-- Host: localhost Database: sampdb
-- ------------------------------------------------------
-- Server version 5.6.31 /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; --
-- Table structure for table `absence`
-- DROP TABLE IF EXISTS `absence`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `absence` (
`student_id` int(10) unsigned NOT NULL,
`date` date NOT NULL,
PRIMARY KEY (`student_id`,`date`),
CONSTRAINT `absence_ibfk_1` FOREIGN KEY (`student_id`) REFERENCES `student` (`student_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
/*!40101 SET character_set_client = @saved_cs_client */; ......以下省略......

  如果指定了数据库的名字,而没有给出任何表名,那么 mysqldump 将把该数据库里所有表的结构显示出来。否则,它将只会显示那些通过名字指定的那些表的信息。

  在使用 mysqlshow 和 mysqldump 时,记得要指定必要的连接参数,如 --host、--usr 或 --password。

MySQL数据库(9)----从命令行获取元数据的更多相关文章

  1. MySql数据库4【命令行赋权操作】

    MySQL 赋予用户权限命令的简单格式可概括为:grant 权限 on 数据库对象 to 用户 一.grant 普通数据用户,查询.插入.更新.删除 数据库中所有表数据的权利. grant selec ...

  2. mySQL数据库二:命令行的使用

    在做整理的时候,上一篇刚开始只是简单的做了个数据类型的开头,在这里简单说一下mySQL的使用以及它的命令行 1.准备工作 有一个好的开发工具可以几何倍数的增加我们的工作效率,所以,工具是必不可少的,首 ...

  3. (转)MySql数据库4【命令行赋权操作】

    MySQL 赋予用户权限命令的简单格式可概括为:grant 权限 on 数据库对象 to 用户 原文:http://www.cnblogs.com/zhuyibo/p/3980328.html 一.g ...

  4. MySQL数据库之------DOS命令行的基本操作

    1.   进入D盘的如下路径: 按住   ctrl+shift  ,右键,选择在此处打开命令行窗口.出现图2.   图   1  图 2 2. .     3.   图 3  4.    图 4   ...

  5. mySQL数据库三:命令行附录

    一:where 在上一篇,粗略的介绍了where,但是where后面可以跟其他的条件,现在我们来一一说明 1.between:在某两个值之间 我建立一个名为person的表,里面有id,name,ag ...

  6. Python全栈 MySQL 数据库(SQL命令大全、MySQL 、Python调用)

    为了梦想与了信仰    开局一张图   主要三个方面: 1.Linux终端命令 2.MySQL语句 3.Python调用   先删库 再跑路.....                         ...

  7. MYSQL 数据库导入导出命令

    MySQL命令行导出数据库 1,进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录 如我输入的命令行:cd C:\Program Files\MySQL\MySQL Serve ...

  8. MySQL数据库操作常用命令

    MySQL数据库操作常用命令DOS连接数据库1.安装MySQL配置好环境2.运行cmd命令net start mysql3.找到mysql文件根目录输入命令mysql -h localhost -u ...

  9. MYSQL 数据库导入导出命令

    在不同操作系统或MySQL版本情况下,直接拷贝文件的方法可能会有不兼容的情况发生.所以一般推荐用SQL脚本形式导入.下面分别介绍两种方法. MySQL命令行导出数据库 1,进入MySQL目录下的bin ...

随机推荐

  1. linux如何安装和启动mongdb

    1.下载安装包 下载地址: https://www.mongodb.com/dr/fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.9.tgz/dow ...

  2. linux下启动tomcat服务的命令是什么

    Linux下tomcat服务的启动.关闭与错误跟踪,使用PuTTy远程连接到服务器以后,通常通过以下几种方式启动关闭tomcat服务:切换到tomcat主目录下的bin目录(cd usr/local/ ...

  3. windows server 2012 valid key

    好吧,网页三剑客. 1, load disc iso 2,check ip settings, 3,net-inst-server-start 4,power Node, F2 4.1 F7 usbc ...

  4. <VS2017> 编写VC++单元测试 -(一)新建单元测试工程

    开发人员自己编写单元测试是一个非常好的习惯.单元测试不但能够验证自己所编写的代码是否存在问题,避免提交给测试人员时才发现bug,也可以为将来改动代码的人提供验证代码功能正确性的途径.在我有限的工作生涯 ...

  5. MIME类型是什么?包含哪些类型?

    摘自:http://www.tuidc.com/idczixun/newsx/newsidc/3479.html 问:MIME类型是什么?    答:MIME(Multipurpose Interne ...

  6. python实现RSA加密解密方法

    python3.5 安装pip 安装rsa python -m pip install rsa 我们可以生成RSA公钥和密钥,也可以load一个.pem文件进来 # -*- coding: utf-8 ...

  7. tomcat无法登录

    最近开始学JEE,在配置环境时,使用了tomcat 7.x的版本,然而点击manager app时无法登录. 按照网络上的教程(如:http://www.oschina.net/question/19 ...

  8. Java程序员的面试经历和题库

    最近打算换城市了,受不了北京的雾霾了,所以准备逃离啦.所以一直在面试中,整理了下最近遇到的一些面试题,供大家参考.其中会包含一些面试的小经验,如果您是面霸,希望能给予指导.自己不是大牛,如果您是大牛, ...

  9. Check类之TypeValidation

    (1)Validator类的visitTypeApply()方法 实例1: class TestTypeVal<T extends InputStream>{ TestTypeVal< ...

  10. Connection连接、关闭数据库

    创建连接sql server数据库的字符一般有两种, 一种是以sql验证登录的 一种是以windows身份验证的 步骤: 引用命名空间System.Date.SqlClient 将连接方法声明至字符串 ...