2015-03-21 17 views
9

Tôi đang sử dụng không thể quản lý một máy chủ thư nhỏ bằng cách sử dụng ubuntu. Tôi muốn sử dụng ansible để tạo ra một cơ sở dữ liệu mà tôi có thể làm và cũng tạo ra người dùng cho (các) cơ sở dữ liệu mà tôi cũng có thể làm. Nhưng tôi không chắc chắn làm thế nào để tạo ra các bảng bằng cách sử dụng ansible. Tôi đang cố gắng để tạo ra ba bảng MySQL sau sử dụng ansible:Tạo các bảng MySQL với Ansible

1)

CREATE TABLE `virtual_domains` (
    `id` int(11) NOT NULL auto_increment, 
    `name` varchar(50) NOT NULL, 
    PRIMARY KEY (`id`) 
) ENGINE=InnoDB DEFAULT CHARSET=utf8; 

2)

CREATE TABLE `virtual_users` (
    `id` int(11) NOT NULL auto_increment, 
    `domain_id` int(11) NOT NULL, 
    `password` varchar(106) NOT NULL, 
    `email` varchar(100) NOT NULL, 
    PRIMARY KEY (`id`), 
    UNIQUE KEY `email` (`email`), 
    FOREIGN KEY (domain_id) REFERENCES virtual_domains(id) ON DELETE CASCADE 
) ENGINE=InnoDB DEFAULT CHARSET=utf8; 

3)

CREATE TABLE `virtual_aliases` (
    `id` int(11) NOT NULL auto_increment, 
    `domain_id` int(11) NOT NULL, 
    `source` varchar(100) NOT NULL, 
    `destination` varchar(100) NOT NULL, 
    PRIMARY KEY (`id`), 
    FOREIGN KEY (domain_id) REFERENCES virtual_domains(id) ON DELETE CASCADE 
) ENGINE=InnoDB DEFAULT CHARSET=utf8; 

Tôi đã tìm kiếm và đã tìm kiếm và thậm chí yêu cầu trong #ansible và đã tuyên bố rằng tôi có thể sử dụng các mô-đun mysql_db để hoàn thành nhiệm vụ trên nhưng tôi không thể tìm thấy bất kỳ exa các mẫu sẽ cho tôi một số loại hướng về cách đạt được điều này ở mức không an toàn.

Bất kỳ và tất cả trợ giúp sẽ được đánh giá cao!

Trả lời

8

Với mysql_db module bạn có thể nhập tệp MySQL. Vì vậy, bạn chỉ có thể sao chép tất cả 3 tạo báo cáo vào một tập tin văn bản đơn lẻ và nhập nó như thế này:

- mysql_db: name=my_db state=import target=/tmp/dump.sql.bz2 

Đó dụ được lấy từ trang tài liệu liên quan trên, có nhiều nhiệm vụ trong đó có một trong đó cho thấy bạn làm thế nào để sao chép tệp cho máy chủ trước đó.

+0

Điều này đã hoạt động như đã nêu! Cảm ơn bạn rất nhiều !! – mvelez83

Các vấn đề liên quan