diff --git a/mysql/config.sls b/mysql/config.sls
index 993c94ba195c6f4345b64d5276075d3ce165bb1e..1d3d343a42a3c5f94bc4bf898bd779c49f1be5d4 100644
--- a/mysql/config.sls
+++ b/mysql/config.sls
@@ -25,6 +25,8 @@ mysql_server_config:
     - group: root
     - mode: 644
     {% endif %}
+    - require:
+      - file: mysql_config_directory
 {% endif %}
 
 {% if "galera_config" in mysql %}
@@ -40,6 +42,8 @@ mysql_galera_config:
     - group: root
     - mode: 644
     {% endif %}
+    - require:
+      - file: mysql_config_directory
 {% endif %}
 
 {% if "library_config" in mysql %}
@@ -55,6 +59,8 @@ mysql_library_config:
     - group: root
     - mode: 644
     {% endif %}
+    - require:
+      - file: mysql_config_directory
 {% endif %}
 
 {% if "clients_config" in mysql %}
@@ -70,6 +76,8 @@ mysql_clients_config:
     - group: root
     - mode: 644
     {% endif %}
+    - require:
+      - file: mysql_config_directory
 {% endif %}
 
 {% endif %}
diff --git a/mysql/server.sls b/mysql/server.sls
index a4d785d6d1bfffb7d267c337013d2c5a3a39d6cb..275c085026be07716f6e70b2d04aa7a4c399551a 100644
--- a/mysql/server.sls
+++ b/mysql/server.sls
@@ -104,6 +104,9 @@ mysqld-packages:
 {% endif %}
     - require_in:
       - file: mysql_config
+{% if "config_directory" in mysql %}
+      - file: mysql_config_directory
+{% endif %}
 
 {% if os_family in ['RedHat', 'Suse'] and mysql.version is defined and mysql.version >= 5.7 and mysql.serverpkg.lower() != 'mariadb-server' %}
 # Initialize mysql database with --initialize-insecure option before starting service so we don't get locked out.