Discover Packages
github.com/shaowin16/tsdump
command
module
Version:
v0.0.0-...-199f638
Opens a new window with list of versions in this module.
Published: Sep 9, 2018
License: Apache-2.0
Opens a new window with license information.
Imports: 16
Opens a new window with list of imports.
Imported by: 0
Opens a new window with list of known importers.
README
README
¶
tsdump
目录
特性
支持将数据库(当前仅支持MySQL
)及其表结构的元数据以text
、markdown
、json
、csv
形式输出。
安装
基本使用
$ tsdump --help
NAME:
tsdump - Database table structure dump tool.
USAGE:
tsdump [OPTIONS] [database [table ...]]
VERSION:
0.3.0
AUTHOR:
voidnt <voidint@126.com>
OPTIONS:
-D, --debug enable debug mode
-h value, --host value connect to host (default: "127.0.0.1")
-P value, --port value port number to use for connection (default: 3306)
-u value, --user value user for login if not current user (default: "voidint")
-p value, --password value password to use when connecting to server. If password is not given it's solicited on the tty.
-V value, --viewer value output viewer. Optional values: txt|csv|json|md (default: "txt")
-o value, --output value write to a file, instead of STDOUT
--help show help
--version, -v print the version
COPYRIGHT:
Copyright (c) 2017, 2018, voidint. All rights reserved.
使用root
用户创建一个名为mydb
的数据库实例,以及一张student
的表。
CREATE DATABASE IF NOT EXISTS `mydb` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
USE `mydb`;
CREATE TABLE `student` (
`sno` char(8) NOT NULL COMMENT '学号',
`sname` varchar(255) NOT NULL COMMENT '姓名',
`gender` char(2) DEFAULT NULL COMMENT '性别',
`native` char(20) DEFAULT NULL COMMENT '籍贯',
`birthday` datetime DEFAULT NULL COMMENT '出生日期',
`dno` char(6) DEFAULT NULL COMMENT '所在院系',
`spno` char(8) DEFAULT NULL COMMENT '专业代码',
`classno` char(4) DEFAULT NULL COMMENT '班级号',
`entime` date DEFAULT NULL COMMENT '入校时间',
`home` varchar(40) DEFAULT NULL COMMENT '家庭住址',
`tell` varchar(40) DEFAULT NULL COMMENT '联系电话',
PRIMARY KEY (`sno`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='学生信息表';
将目标数据库及其所有表的表结构数据以表格形式输出到console
$ tsdump -h 127.0.0.1 -P 3307 -u root mydb
Enter Password:
|----------|---------------|--------------------|
| DATABASE | CHARACTER SET | COLLATION |
|----------|---------------|--------------------|
| mydb | utf8mb4 | utf8mb4_general_ci |
|----------|---------------|--------------------|
TABLE: student 学生信息表
|----------|--------------|----------|-----|---------|---------------|--------------------|----------|
| COLUMN | DATA TYPE | NULLABLE | KEY | DEFAULT | CHARACTER SET | COLLATION | COMMENT |
|----------|--------------|----------|-----|---------|---------------|--------------------|----------|
| sno | char(8) | NO | PRI | | utf8mb4 | utf8mb4_general_ci | 学号 |
| sname | varchar(255) | NO | | | utf8mb4 | utf8mb4_general_ci | 姓名 |
| gender | char(2) | YES | | | utf8mb4 | utf8mb4_general_ci | 性别 |
| native | char(20) | YES | | | utf8mb4 | utf8mb4_general_ci | 籍贯 |
| birthday | datetime | YES | | | | | 出生日期 |
| dno | char(6) | YES | | | utf8mb4 | utf8mb4_general_ci | 所在院系 |
| spno | char(8) | YES | | | utf8mb4 | utf8mb4_general_ci | 专业代码 |
| classno | char(4) | YES | | | utf8mb4 | utf8mb4_general_ci | 班级号 |
| entime | date | YES | | | | | 入校时间 |
| home | varchar(40) | YES | | | utf8mb4 | utf8mb4_general_ci | 家庭住址 |
| tell | varchar(40) | YES | | | utf8mb4 | utf8mb4_general_ci | 联系电话 |
|----------|--------------|----------|-----|---------|---------------|--------------------|----------|
将目标数据库下目标表的表结构数据输出到markdown文件
$ tsdump -h 127.0.0.1 -P 3307 -u root -V md -o ./student.md mydb student
output:
DATABASE
CHARACTER SET
COLLATION
mydb
utf8mb4
utf8mb4_general_ci
student
学生信息表
COLUMN
DATA TYPE
NULLABLE
KEY
DEFAULT
CHARACTER SET
COLLATION
COMMENT
sno
char(8)
NO
PRI
utf8mb4
utf8mb4_general_ci
学号
sname
varchar(255)
NO
utf8mb4
utf8mb4_general_ci
姓名
gender
char(2)
YES
utf8mb4
utf8mb4_general_ci
性别
native
char(20)
YES
utf8mb4
utf8mb4_general_ci
籍贯
birthday
datetime
YES
出生日期
dno
char(6)
YES
utf8mb4
utf8mb4_general_ci
所在院系
spno
char(8)
YES
utf8mb4
utf8mb4_general_ci
专业代码
classno
char(4)
YES
utf8mb4
utf8mb4_general_ci
班级号
entime
date
YES
入校时间
home
varchar(40)
YES
utf8mb4
utf8mb4_general_ci
家庭住址
tell
varchar(40)
YES
utf8mb4
utf8mb4_general_ci
联系电话
将用户权限范围内数据库及其表结构数据输出到csv文件
$ tsdump -h 127.0.0.1 -P 3307 -u root -V csv > ./mydb.csv
将目标数据库及其所有表的表结构数据输出到JSON文件
$ tsdump -h 127.0.0.1 -P 3307 -u root -V json mydb > mydb.json
Changelog
0.4.0 - 2018/03/25
Add feature
: 支持UNIX Domain Socket
方式连接数据库。#18
Modify feature
: 优化JSON视图输出格式。#19
0.3.0 - 2018/01/05
Add feature
: 支持通过-p
选项指定数据库登录密码。#16
Fixbug
: 标准输出重定向后获得的内容中包含有Enter Password:
字样。#17
0.2.0 - 2018/01/01
Add feature
: 支持从stdin console中读取数据库登录密码。#5
Fixbug
: 修正help信息。#6
Add feature
: 支持命令行参数指定目标数据库和表。#12
Add feature
: 支持通过-h
选项指定主机名。#14
0.1.0 - 2017/12/31
Add feature
: 支持以csv
视图方式导出表结构数据。#1
Add feature
: 支持以markdown
视图方式导出表结构数据。#2
Add feature
: 支持以text
视图方式导出表结构数据。#3
Add feature
: 支持以json
视图方式导出表结构数据。#4
Expand ▾
Collapse ▴
Documentation
¶
There is no documentation for this package.
Source Files
¶
Directories
¶
Click to show internal directories.
Click to hide internal directories.