odoo 命令行工具 cmdline 指的是odoo.py 或odoo-bin文件
有如下啟動參數,下面對odoo12的部分新參數單獨說明
-d <數據庫名>, --database <數據庫名>
指定運行服務時使用的數據庫
-i <模塊>, --init <模塊>
指定運行服務前安裝的模塊列表(可用逗號分隔 需要-d參數)
-u <模塊>, --update <模塊>
指定運行服務前更新的模塊列表 (可用逗號分隔 需要-d參數)
--addons-path <目錄>
逗號分隔存儲模塊的目錄,運行服務時掃描並加載這些目錄中的模塊。
--workers <數量>
進程數量 默認為0,如果大於0,則開啟多進程模式,數目為http worker的數量,每個http worker可單獨處理HTTP和RPC請求(windows上此參數無效,不能設置)
下面以limit開頭的參數可對每個http worker做限制
--limit-request <限制數目>
一個worker在回收或重啟前所能處理的請求數量(默認 8196)
--limit-memory-soft <限制內存>
一個worker允許最大限度的虛擬內存。如果限制被超出,這個角色將被停止並且在當前請求結束后被回收。
默認是 2048MB (不同版本默認大小可能不一樣,內存單位可以是MB,G等)
--limit-memory-hard <限制內存>
虛擬內存的強制限制,任何超出限制的worker會被立即殺死,不用等到當前請求處理結束。
默認是 2560MB (內存單位可以是MB,G等)
--limit-time-cpu <限制秒數>
設置每個worker為請求所使用的CPU最大秒數。如果超過限制,worker會被殺死。
默認是 60
--limit-time-real <限制秒數>
設置每個worker為請求所使用的CPU最大秒數。如果超過限制,worker會被殺死。
與--limit-time-cpu 不同的地方在於,它帶有一個"wall time" 的限制,包括例如SQL查詢的時間。
默認為120。
--max-cron-threads <數量>
定時任務所使用的worker數量。默認為2。
數量實際為多線程模式中的線程數和多進程模式中的進程數。對於多進程模式,是HTTP worker的之外的進程數。
-c <配置文件>, --config <配置文件>
指定一個啟動配置文件,推薦使用絕對路徑
-s, --save
保存服務器當前配置到當前的配置文件中 (默認是 $HOME/.odoorc ,可使用前面的-c參數覆蓋,保存后可以看到一些默認配置項的值,不過不是所有的配置都會列出)
--proxy-mode
通過Werkzeug代理支持啟用X-Forwarded-*報頭的使用,在log中記錄用戶真實IP地址,需要申明此參數,另外此參數必須在反向代理模式下使用。
--test-enable
安裝模塊后運行測試
--test-tags 'tag_1,tag_2,...,-tag_n'
以tag的字符串逗號分割的列表形式選擇啟用的測試
--dev <功能,功能,...,功能>
all 以下的所有功能特性被激活
xml 直接從XML文件讀取QWeb模板,而不是從數據庫中。默認情況下,如果模塊中的模板在數據庫中被修改,它將不會讀取XML文件,直到下一次模塊更新或初始化。
reload 當python文件被更新重啟服務(可能無法檢測取決於使用的文本編輯器)
qweb 當一個節點包含 t-debug='debugger' 時相關的qweb模板被中斷。
(i)p(u)db 當一個異常拋出在錯誤日志返回前啟動一個python的調試器。
數據庫相關參數
-r <數據庫用戶>, --db_user <數據庫用戶>
數據庫用戶名,用於連接到PostgreSQL
-w <數據庫密碼>, --db_password <數據庫密碼>
數據庫密碼,如果使用了pg的密碼驗證。
--db_host <主機地址>
數據庫服務器地址
Windows上為localhost
或者為UNIX 套接字
--db_port <端口號>
數據庫監聽端口號,默認是 5432
--db-filter <篩選器>
隱藏不匹配<篩選器>的數據庫。篩選器filter是一個正則表達式,參數可包含:
%h 替換為被請求的完整的主機名。
%d 替換為被請求的子域名,www例外(因此域名http://odoo.com和http://www.odoo.com可同時匹配數據庫odoo)。
這些操作是區分大小寫的。可添加參數(?i)來匹配所有數據庫(因此域名http://odoo.com可使用 (?i)% d匹配數據庫Odoo)。
自Odoo11起, 可以強制指定所能訪問的數據庫,通過--database參數,可以接一個或多個數據庫名稱(用逗號分隔),db-filter database可以聯合使用。
例子
odoo-bin --db-filter ^11.* 強制指定所能訪問的db名稱以11開頭
odoo-bin --database 11firstdatabase,11seconddatabase 只能訪問 11firstdatabase 和11seconddatabase數據庫
odoo-bin --database 11firstdatabase,11seconddatabase -u base 只能訪問 11firstdatabase 和11seconddatabase數據庫 並且更新base模塊,如果數據庫不存在,則自動創建並安裝base模塊
odoo-bin --db-filter ^11.*$ --database 11firstdatabase,11seconddatabase -u base 和上面一樣,不過輸入的dbname會經過過濾器先過濾一次
--db-template <模板名>
當從數據庫管理界面創建一個新的數據庫,使用指定的模板數據庫。默認為template1。
--no-database-list
禁止顯示系統中可用的數據庫
原文鏈接:https://www.erpdaxue.cn/odoo/odoo教程/odoo命令行參數/