一直想開發或者找一個開源的軟件,功能就相似看雲同樣,用來搭建屬於一套本身的文檔管理系統,將本身日常的東西集中化管理,造成一個手冊。因而找到了mindoc這樣一款不錯的文檔管理系統軟件。本文大體介紹一下如何安裝,基本的功能介紹。mysql
主要功能包括文檔管理、導出、團隊管理、文章管理等功能。特別適合團隊或者我的作一個知識庫文檔管理系統。linux
mindoc支持Linux和Windows系統環境,我這裏使用的是Linux系統。系統的配置信息以下: Centos7.4; MySQL5.7; MySQL屬於獨立搭建的,若是不會的能夠參考一下我的以前分享的一篇文章Linux搭建MySQL環境 ,其餘的東西也沒了,屬於一個純淨的Linux系統。git
源碼地址sql
tar -zxvf mindoc_linux_amd64.zip
找到config目錄下面的app.config文件,若是不存在該文件,應該有一個app.config.example文件,將該文件複製一分,命名爲app.conf便可.數據庫
cp app.conf.example app.conf
#支持MySQL和sqlite3兩種數據庫,若是是sqlite3 則 db_database 標識數據庫的物理目錄db_adapter="${MINDOC_DB_ADAPTER||mysql}"db_host="${MINDOC_DB_HOST||127.0.0.1}"db_port="${MINDOC_DB_PORT||3306}"db_database="${MINDOC_DB_DATABASE||mindoc}"db_username="${MINDOC_DB_USERNAME||root}"db_password="${MINDOC_DB_PASSWORD||}"
我這裏使用的MySQL,所以將adapter改成mysql便可。下面的一些信息改爲MySQL實際的配置信息便可。其餘的配置信息就根據本身實際須要來作修改便可。
# 建立mysql數據庫create database mindoc;# 建立mysql用戶CREATE USER 'username'@'host' IDENTIFIED BY 'password';# 受權給新建的mysql用戶grant all ON databasename.tablename TO 'username'@'host';# 刷新全新啊flush privileges;
注意事項
初始化數據 進入mindoc解壓的根目錄,會發現有一個mindoc_linux_amd64文件,該文件爲啓動文件。執行下面的命令:服務器
./mindoc_linux_amd64 install
該命令的做用時初始化一些數據到MySQL中。就相似PHP不少軟件,經過界面來安裝應用。
啓動服務app
./mindoc_linux_amd64
問題出現,在啓動的過程當中可能會出現以下的狀況:this
OperationalError: (_mysql_exceptions.OperationalError) (1055, "Expression #1 ofSELECT list is not in GROUP BY clause and contains nonaggregated column 'db.table.create_time' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by") [SQL: u'SELECT table.create_time AS table_create_time, table.count AS table_count \nFROM table \nWHERE table.cluster_id = %s AND table.create_time > %s GROUP BY table.count'] [parameters: (1, datetime.datetime(2000, 1, 1, 0, 0))]
在實際的過程當中錯誤的語言不是這樣的,在安裝時忘記記錄了,不過大體的錯誤信息是這樣的。只要關注下面這一段錯誤碼,就好了。1055, "Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'db.table.create_time' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by"
解決問題。spa
mysql> show variables like 'sql_mode';+---------------+-------------------------------------------------------------------------------------------------------------------------------------------+| Variable_name | Value |+---------------+-------------------------------------------------------------------------------------------------------------------------------------------+| sql_mode | ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION |+---------------+-------------------------------------------------------------------------------------------------------------------------------------------+1 row in set (0.00 sec)
執行下面的命令,將該sql_mode的配置信息改外其餘的模式:code
set @@sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
此時,再來查詢該環境變量的值,就是以下的值了:
mysql> show variables like 'sql_mode';+---------------+------------------------------------------------------------------------------------------------------------------------+| Variable_name | Value |+---------------+------------------------------------------------------------------------------------------------------------------------+| sql_mode | STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION |+---------------+------------------------------------------------------------------------------------------------------------------------+1 row in set (0.00 sec)
記得修改配置以後,必定的重啓MySQL服務,不然是不會生效的。
重啓mindoc服務。
./mindoc_linux_amd64
若是須要將該服務以守護進程的方式啓動,則在後面加一個 &便可。
上面正常將服務啓動並安裝,接下來使用下面的連接便可訪問:
# ip爲你服務器ip地址,若是是本地則使用localhost,或者127.0.0.1ip:8181
下面是幾張頁面的截圖,因爲功能很好上手使用,這裏就不單獨介紹如何使用功能了。