代码之家  ›  专栏  ›  技术社区  ›  cheznead

导入带有ansible的mysql dump

  •  0
  • cheznead  · 技术社区  · 6 年前

    所以我尝试导入一个mysql转储,它包含两个数据库,在一个Windows框中有ansible。 答案应该是正确的。

    - hosts: win
      gather_facts: no
      tasks:
      - name: Import DB
        win_command: 'mysql -uroot -p12345678910 -hlocalhost < "C:\sql\dump.sql"'
        args:
          chdir: C:\Program Files\MySQL\MySQL Server 5.6\bin\
    

    如果我打开命令并运行 cd C:\Program Files\MySQL\MySQL Server 5.6\bin\ 然后 'mysql -uroot -p12345678910 -hlocalhost < "C:\sql\dump.sql"' 它工作得很好。

    我得到一个巨大的错误。我做错什么了?

    我能用一本非常相似的剧本检查数据库:

    - hosts: win
      gather_facts: no
      tasks:
      - name: Check DB
        win_command: 'mysql -uroot -p12345678910  -e "SHOW DATABASES;"'
        args:
          chdir: C:\Program Files\MySQL\MySQL Server 5.6\bin\
    
    1 回复  |  直到 6 年前
        1
  •  1
  •   Clauz    6 年前

    问题可能是输入重定向。也许你可以尝试一下:

    win_command: 'Get-Content C:\sql\dump.sql | mysql -uroot -p12345678910 -hlocalhost'
    

    Redirecting standard input\output in Windows PowerShell