Ansible 從遠程主機添加或刪除MySQL數據庫
阿新 • • 發佈:2017-06-27
border sin ans ext targe odin 工作 ble edi
mysql_db - 從遠程主機添加或刪除MySQL數據庫。
- 概要
- 要求(在執行模塊的主機上)
- 選項
- 例子
- 筆記
- 狀態
- 支持
概要
- 從遠程主機添加或刪除MySQL數據庫。
要求(在執行模塊的主機上)
- MySQLdb的
- mysql(命令行二進制)
- mysqldump(命令行二進制)
選項
參數 | 需要 | 默認 | 選擇 | 註釋 |
---|---|---|---|---|
collation |
no | 整理模式(排序)。這僅適用於新的表/數據庫,並且不更新現有的表,這是MySQL的限制。 | ||
CONFIG_FILE (2.0中加入) |
no | ?/ .my.cnf |
指定要從中讀取用戶和密碼的配置文件。 |
|
connect_timeout (2.1中加入) |
no | 30 | 連接到MySQL服務器時的連接超時。 | |
encoding |
no |
使用編碼模式,示例包括utf8 或latin1_swedish_ci
|
||
login_host |
no | localhost | 主機運行數據庫。 | |
login_password |
no | 用於驗證的密碼。 | ||
login_port |
no | 3306 | MySQL服務器端口。如果使用login_port,則需要將login_host定義為其他本地主機。 | |
login_unix_socket |
no | 到本地連接的Unix域套接字的路徑。 | ||
login_user |
no | 用於驗證的用戶名。 | ||
name |
yes |
要添加或刪除的數據庫的名稱
name = all僅當狀態為dump 或時才可用import 。
如果name = all就像mysqldump的--all-databases選項一樣工作(在2.0中添加)
別名:db |
||
quick (2.1加入) |
no | True | 用於轉儲大表的選項 | |
single_transaction (2.1加入) |
no | 在單個事務中執行轉儲 | ||
ssl_ca (2.0加入) |
no | 證書頒發機構(CA)證書的路徑。此選項(如果使用)必須指定與服務器使用的相同的證書。 | ||
ssl_cert (2.0加入) |
no | 客戶端公鑰證書的路徑。 | ||
ssl_key (2.0加入) |
no | 客戶端私鑰的路徑。 | ||
state |
no | present |
|
數據庫狀態 |
target |
no |
在遠程主機上的位置,轉儲文件的讀取或寫入。支持未壓縮的SQL文件(.sql )以及bzip2(.bz2 ),gzip(.gz )和xz(2.0中添加)壓縮文件。
|
例子
- name: Create a new database with name ‘bobdata‘
mysql_db:
name: bobdata
state: present
# Copy database dump file to remote host and restore it to database ‘my_db‘
- name: Copy database dump file
copy:
src: dump.sql.bz2
dest: /tmp
- name: Restore database
mysql_db:
name: my_db
state: import
target: /tmp/dump.sql.bz2
- name: Dump all databases to hostname.sql
mysql_db:
state: dump
name: all
target: /tmp/{{ inventory_hostname }}.sql
- name: Import file.sql similar to mysql -u <username> -p <password> < hostname.sql
mysql_db:
state: import
name: all
target: /tmp/{{ inventory_hostname }}.sql
註意
- 需要遠程主機上的python-mysqldb包,以及mysql和mysqldump二進制文件。
- 需要遠程主機上的MySQLdb Python包。對於Ubuntu,這和apt-get install python-mysqldb一樣簡單。(請參閱apt。)對於CentOS / Fedora,這與yum安裝MySQL-python一樣簡單。(見yum。)
- 無論
login_password
和login_user
你逝去的憑據是必需的。如果不存在,則模塊將嘗試從中讀取憑據~/.my.cnf
,最後回到使用MySQL默認登錄的“root”,沒有密碼。
狀態
該模塊被標記為預覽,這意味著它不能保證具有向後兼容的界面。
支持
這個模塊是沒有核心提交者監督的社區維護的。
有關這是什麽意思的更多信息,請閱讀模塊支持
為了幫助開發模塊,如果您有這樣的傾向,請閱讀社區信息和貢獻,測試可編程和開發模塊。
Ansible 從遠程主機添加或刪除MySQL數據庫