tsdump
tsdump copied to clipboard
Database table structure dump tool.
trafficstars
tsdump
注æï¼master忝å¯è½å¤äºå¼åä¹ä¸å¹¶é稳å®çæ¬ï¼è¯·éè¿tagä¸è½½ç¨³å®çæ¬çæºä»£ç ï¼æéè¿releaseä¸è½½å·²ç¼è¯çäºè¿å¶å¯æ§è¡æä»¶ã
ç®å½
- ç¹æ§
- å®è£
- åºæ¬ä½¿ç¨
- Changelog
ç¹æ§
- æ¯æå°æ°æ®åº(å½åä»
æ¯æ
MySQL)åå ¶è¡¨ç»æçå æ°æ®ä»¥textãmarkdownãjsonãcsvãxlsxå½¢å¼è¾åºã
å®è£
-
æºä»£ç å®è£
$ GO111MODULE=on GOPROXY=https://goproxy.cn go install -v github.com/voidint/[email protected] -
äºè¿å¶å®è£
åºæ¬ä½¿ç¨
$ tsdump --help
NAME:
tsdump - Database table structure dump tool.
USAGE:
tsdump [OPTIONS] [database [table ...]]
VERSION:
0.5.0
AUTHOR:
voidint <[email protected]>
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)
-S value, --socket value socket file to use for connection
-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: csv|json|md|xlsx|txt (default: "txt")
-o value, --output value write to a file, instead of STDOUT
-s, --sorted sort table columns
--help show help
--version, -v print the version
COPYRIGHT:
Copyright (c) 2017-2021, 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 studentoutput:
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.5.0 - 2021/11/16
- æ¯æä»¥
xlsxè§å¾æ¹å¼å¯¼åºè¡¨ç»ææ°æ®ã#27 - æ°å¢
-séé¡¹ä»¥æ¯æå¯¹æ°æ®åºã表ãåæ®µæåå ¸åºæåã#28
0.4.2 - 2020/05/22
- æ´æ°ä¾èµï¼xormï¼é¿å
go getç¼è¯é误
0.4.1 - 2020/01/05
- 修订çæä¿¡æ¯
0.4.0 - 2018/03/25
0.3.0 - 2018/01/05
- æ¯æéè¿
-pé项æå®æ°æ®åºç»å½å¯ç ã#16 Fixbug: æ åè¾åºéå®ååè·å¾çå 容ä¸å 嫿Enter Password:åæ ·ã#17
0.2.0 - 2018/01/01
- æ¯æä»stdin consoleä¸è¯»åæ°æ®åºç»å½å¯ç ã#5
Fixbug: ä¿®æ£helpä¿¡æ¯ã#6- æ¯æå½ä»¤è¡åæ°æå®ç®æ æ°æ®åºå表ã#12
- æ¯æéè¿
-hé项æå®ä¸»æºåã#14