• Ansible 从远程主机添加或删除MySQL数据库


    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    
    使用编码模式,示例包括utf8latin1_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
    • present
    • absent
    • dump
    • import
    数据库状态
    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_passwordlogin_user你逝去的凭据是必需的。如果不存在,则模块将尝试从中读取凭据~/.my.cnf,最后回到使用MySQL默认登录的“root”,没有密码。

    状态

    该模块被标记为预览,这意味着它不能保证具有向后兼容的界面。

    支持

    这个模块是没有核心提交者监督的社区维护的。

    有关这是什么意思的更多信息,请阅读模块支持

    为了帮助开发模块,如果您有这样的倾向,请阅读社区信息和贡献测试可编程开发模块

  • 相关阅读:
    Codeforces Round #246 (Div. 2) —B. Football Kit
    expected expression __bridge
    ACM-百度之星资格赛之Energy Conversion——hdu4823
    xml解析-jaxp之dom解析
    NTP原理初步与配置
    Android开发学习之TabView选项卡具体解释 -- 基于Android4.4
    Apache轻量级性能測试工具--ab
    BAT的云
    03001_数据库
    ASP.NET调用dos命令获取交换机流量
  • 原文地址:https://www.cnblogs.com/mhc-fly/p/7082737.html
Copyright © 2020-2023  润新知