diff --git a/galera/server.sls b/galera/server.sls
new file mode 100644
index 0000000..e50f0b6
--- /dev/null
+++ b/galera/server.sls
@@ -0,0 +1,82 @@
+{%- if pillar.get('mysql', {}).server is defined  %}
+
+{%- set server = pillar.mysql.server %}
+
+{%- for database_name, database in server.get('database', {}).iteritems() %}
+
+mysql_database_{{ database_name }}:
+  mysql_database.present:
+  - name: {{ database_name }}
+  - require:
+    {% if cluster.enabled %}
+    - cmd: mysql_cluster_init
+    {% else %}
+    - service: mysql_service
+    {% endif %}
+
+{%- for user in database.users %}
+
+mysql_user_{{ user.name }}_{{ database_name }}_{{ user.host }}:
+  mysql_user.present:
+  - host: '{{ user.host }}'
+  - name: '{{ user.name }}'
+  - password: {{ user.password }}
+  - require:
+    {% if cluster.enabled %}
+    - cmd: mysql_cluster_init
+    {% else %}
+    - service: mysql_service
+    {% endif %}
+
+mysql_grants_{{ user.name }}_{{ database_name }}_{{ user.host }}:
+  mysql_grants.present:
+  - grant: {{ user.rights }}
+  - database: '{{ database_name }}.*'
+  - user: '{{ user.name }}'
+  - host: '{{ user.host }}'
+  - require:
+    - mysql_user: mysql_user_{{ user.name }}_{{ database_name }}_{{ user.host }}
+    - mysql_database: mysql_database_{{ database_name }}
+
+{%- endfor %}
+
+{%- if database.initial_data is defined %}
+
+/root/mysql/scripts/restore_{{ database_name }}.sh:
+  file.managed:
+  - source: salt://mysql/conf/restore.sh
+  - mode: 770
+  - template: jinja
+  - defaults:
+    database_name: {{ database_name }}
+  - require: 
+    - file: mysql_dirs
+    - mysql_database: mysql_database_{{ database_name }}
+
+restore_mysql_database_{{ database_name }}:
+  cmd.run:
+  - name: /root/mysql/scripts/restore_{{ database_name }}.sh
+  - unless: "[ -f /root/mysql/flags/{{ database_name }}-installed ]"
+  - cwd: /root
+  - require:
+    - file: /root/mysql/scripts/restore_{{ database_name }}.sh
+
+{%- endif %}
+
+{%- endfor %}
+
+{%- for user in server.get('users', []) %}
+
+mysql_user_{{ user.name }}_{{ user.host }}:
+  mysql_user.present:
+  - host: '{{ user.host }}'
+  - name: '{{ user.name }}'
+  {%- if user.password is defined %}
+  - password: {{ user.password }}
+  {%- else %}
+  - allow_passwordless: True
+  {%- endif %}
+
+{%- endfor %}
+
+{%- endif %}
\ No newline at end of file
