J'ai installé MariaDB sur mon serveur Windows et j'ai vu qu'il était par défaut le datadir où les bases de données sont stockées à C:\Program Files\MariaDB 10.2\data

Je voulais qu'il déplace le disque E: dédié aux bases de données.

Je pensais que copier le datadir puis modifier le my.ini dans le datadir C:\Program Files\MariaDB 10.2\data le résoudrait, mais quand j'essayais de redémarrer le service, il ne démarre pas. J'ai également essayé de définir les autorisations de dossier sur le service réseau, mais cela n'a pas semblé aider.

Que dois-je faire pour déplacer mon datadir sur Windows?

1
Tschallacka 16 août 2017 à 17:15

2 réponses

Je pense que le vrai problème est celui-ci.

MariaDB utilise MySQL5.5 (ou MariaDB10 pour l'autre version que j'utilise) comme "utilisateur de groupe" pour définir une autorisation complète sur le dossier de données. Mais cet "utilisateur de groupe" n'est pas créé sous Windows "utilisateurs et groupes". Vous ne pouvez donc pas ajouter ce groupe sur l'onglet de sécurité et définir l'autorisation sur un autre dossier.

En fait, la solution de contournement consiste à copier le dossier de données d'origine vers un nouvel emplacement en préservant l'autorisation d'origine.

Mais mon problème est que je récupère après un crash un ancien dossier de données. Il n'est donc pas clair que la solution de contournement fonctionne (je vais l'essayer ce soir). J'ai besoin de définir le groupe d'utilisateurs correct.

Une vraie correction de bogue: correction de l'installation de MariaDB pour créer efficacement «l'utilisateur du groupe» au bon endroit et non pas simplement l'utiliser dans l'autorisation de dossier.

1
double-beep 21 févr. 2019 à 07:52

Après une certaine confusion avec cette erreur, je peux vous recommander:

  1. Utilisez des barres obliques dans les chemins Windows, par exemple C:/MariaDB/DB.
  2. Expérimentez avec les autorisations adéquates. Cela semble fonctionner:

    cacls Path_to_MariaDB_DBData /E /T /P "Network Service":F 
    
-1
double-beep 18 févr. 2020 à 20:27