1.前言
作為一名技術(shù)人員,少不了接觸數(shù)據(jù)庫(kù),那么當(dāng)遇到一個(gè)舊項(xiàng)目數(shù)據(jù)庫(kù)表比較多,怎么快速的導(dǎo)出表結(jié)構(gòu),形成文檔方便后續(xù)跟進(jìn)呢?今天我給大家安利一個(gè)好用的工具M(jìn)ySQL_markdown。
2.工具官網(wǎng)代碼地址
https://github.com/alicfeng/mysql_markdown
它是一款基于 go 語(yǔ)言編寫的一個(gè)命令行工具,適用于 linux、mac、windows等平臺(tái)。
3.直接部署(小白推薦方式)
發(fā)布包從官網(wǎng)代碼直接下載安裝
https://github.com/alicfeng/mysql_markdown/releases
下載穩(wěn)定版本
4.編譯部署
有時(shí)候我們需要使用工具新特性,可以自行編譯此工具,這里也介紹下如何編譯最新代碼。
4.1部署Go環(huán)境
- 官網(wǎng)下載Go安裝包
官網(wǎng)
https://golang.google.cn/dl/下載go安裝包,選擇合適的平臺(tái)下載安裝即可。
Go官網(wǎng)
- 這里我是macos平臺(tái),下載后默認(rèn)安裝在/usr/local/go/目錄下。
- 配置環(huán)境變量,追加環(huán)境變量。
$ vim ~/.bash_profile
export GOROOT=/usr/local/go/
export GOBIN=$GOROOT/bin
export PATH=$GOBIN:$PATH
- 生效環(huán)境變量
$ source ~/.bash_profile
- 驗(yàn)證是否生效
$ which go
/usr/local/go/bin/go
4.2編譯工具
編譯安裝(有編譯知識(shí)的童鞋可以自行編譯)
$ git clone https://github.com/alicfeng/mysql_markdown.git
$ cd mysql_markdown
$ go get "github.com/go-sql-driver/mysql"
$ go build -o /usr/local/bin/mysql_markdown mysql_markdown.go
$ chmod +x /usr/local/bin/mysql_markdown
5.工具語(yǔ)法
$ ./mysql_markdown_mac --help
Usage: mysql_markdown [options...]
--help This help text
-h host. default 127.0.0.1
-u username. default root
-p password. default root
-d database. default mysql
-P port. default 3306
-c charset. default utf8
-o output. default current location
-t tables. default all table and support ',' separator for filter
是不是和mysql的語(yǔ)法一樣,容易上手。
6.工具實(shí)戰(zhàn)
下面我以導(dǎo)出mysql表為例,這里注意參數(shù)選項(xiàng)和參數(shù)值要空一格,切記切記!
$ ./mysql_markdown_mac -h 10.10.10.10 -P 33706 -u root -p kkdd123 -d mysql
1/31 the columns_priv table is making ...
2/31 the db table is making ...
3/31 the engine_cost table is making ...
4/31 the event table is making ...
5/31 the func table is making ...
6/31 the general_log table is making ...
7/31 the gtid_executed table is making ...
8/31 the help_category table is making ...
9/31 the help_keyword table is making ...
10/31 the help_relation table is making ...
11/31 the help_topic table is making ...
12/31 the innodb_index_stats table is making ...
13/31 the innodb_table_stats table is making ...
14/31 the ndb_binlog_index table is making ...
15/31 the plugin table is making ...
16/31 the proc table is making ...
17/31 the procs_priv table is making ...
18/31 the proxies_priv table is making ...
19/31 the server_cost table is making ...
20/31 the servers table is making ...
21/31 the slave_master_info table is making ...
22/31 the slave_relay_log_info table is making ...
23/31 the slave_worker_info table is making ...
24/31 the slow_log table is making ...
25/31 the tables_priv table is making ...
26/31 the time_zone table is making ...
27/31 the time_zone_leap_second table is making ...
28/31 the time_zone_name table is making ...
29/31 the time_zone_transition table is making ...
30/31 the time_zone_transition_type table is making ...
31/31 the user table is making ...
mysql_markdown finished ...
然后你會(huì)看到當(dāng)前目錄下會(huì)生成一個(gè)mysql_20200610_103451.md文件。
Typora打開md文檔
7.結(jié)束
是不是很簡(jiǎn)單,生成表結(jié)構(gòu)文檔,so easy。你學(xué)會(huì)了嗎?