summaryrefslogtreecommitdiff
path: root/roles/mariadb/tasks/main.yml
blob: 57df61a3eb92317ef2c80176b85fe459ded8b51f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
- name: "judge mariadb status"
  shell: systemctl status mariadb.service
  register: return
  ignore_errors: true

- name: "del mysql user"
  user:
    name: mysql
    state: absent
    remove: yes
  when: return.rc != 0

- name: "del mariadb|mysql"
  yum:
    name: mysql
    state: removed
  yum:
    name: mariadb
    state: removed
  when: return.rc != 0

- name: "copy mysql.zip"
  synchronize:
    src: "{{ role_path }}/files/"
    dest: "/tmp/"
  when: return.rc != 0

- name: "add mysql user"
  shell: useradd mysql -s /sbin/nologin -M
  when: return.rc != 0

- name: "mkdir /home/database/"
  file:
    path: /home/database
    state: directory
  when: return.rc != 0

- name: "mkdir /home/database/dbdata/"
  file:
    path: /home/database/dbdata
    state: directory
    owner: mysql
    group: mysql
  when: return.rc != 0

- name: "mkdir /var/lib/mysql/"
  file:
    path: /var/lib/mysql/
    state: directory
    owner: mysql
    group: mysql
    mode: 1777
  when: return.rc != 0

- name: "mkdir /etc/mysql/"
  file:
    path: /etc/mysql/
    state: directory
  when: return.rc != 0
  
- name: "mkdir /var/log/mariadb/"
  file:
    path: /var/log/mariadb/
    state: directory
  when: return.rc != 0

- name: "set /tmp permission 1777"
  shell: chmod 1777 /tmp
  when: return.rc != 0

- name: "unarchive mariadb"
  unarchive:
    src: "/tmp/mysql.zip"
    dest: "/home/database/"
    copy: no
  when: return.rc != 0

- name: "install libaio-devel"
  yum:
    name:
      - /tmp/libaio-devel-0.3.109-13.el7.x86_64.rpm
    state: present
  when: return.rc != 0

- name: "init mariadb"
  shell: cd /home/database/mysql/scripts;./mysql_install_db --basedir=/home/database/mysql --datadir=/home/database/dbdata --user=mysql
  when: return.rc != 0

- name: "set my.cnf"
  copy:
    src: "{{ role_path }}/files/my.cnf"
    dest: "/etc/mysql/my.cnf"
  when: return.rc != 0

- name: "copy mariadb"
  copy:
    src: "{{ role_path }}/files/mariadb"
    dest: "/etc/init.d/"
    mode: 0755
  when: return.rc != 0

- name: "copy mariadb.service"
  copy:
    src: "{{ role_path }}/files/mariadb.service"
    dest: "/usr/lib/systemd/system/"
    mode: 0755
  when: return.rc != 0

- name: "copy mysql"
  shell: cp -rf /home/database/mysql/bin/mysql /usr/local/bin
  when: return.rc != 0

- name: "copy mysqladmin"
  shell: cp -rf /home/database/mysql/bin/mysqladmin /usr/local/bin
  when: return.rc != 0

- name: "start and enable mariadb"
  systemd:
    name: mariadb
    state: started
    enabled: yes
    daemon_reload: yes
  when: return.rc != 0

- name: "set mariadb password"
  shell: mysqladmin password {{ mariadb.password }}
  when: return.rc != 0

- name: "set mariadb privileges"
  shell: mysql -uroot -p{{ mariadb.password }} -e "grant all privileges on *.* to root@'%' identified by '111111' with grant option;"
  shell: mysql -uroot -p{{ mariadb.password }} -e "flush privileges;"
  when: return.rc != 0