Alterando o diretório de dados no servidor de banco de dados MySQL


10

Instalei o servidor mysql 5.6.24 no Windows Server 2012 R2.

Importei arquivos de despejo e os arquivos de dados são armazenados em C:\ProgramData\MySQL\MySQL Server 5.6\data

Eu quero mudar de diretório como D:\ProgramData\Data.

Você pode me ajudar, alguém?

Respostas:


10
  1. Abra a CLI do Windows como administrador e desligue o MySQL

    net stop mysql
  2. Copie os dados para D:\ProgramData\Data

    xcopy /s C:\ProgramData\MySQL\MySQL Server 5.6\data D:\ProgramData\Data
  3. Criar ou editar C:\ProgramData\MySQL\MySQL Server 5.6\my.ini

    Adicione isso ao my.ini

    [mysqld]
    datadir = D:/ProgramData/Data
    
  4. Inicialização do MySQL

    net start mysql

    Se você não pode executar net start mysql, tente o painel de controle do Windows.

  5. Entre no MySQL e verifique se está tudo bem

Ao fazer login no MySQL, execute este

mysql> SHOW GLOBAL VARIABLES LIKE 'datadir';

Lembre-se de conceder ao seu novo diretório de dados as mesmas permissões completas para os usuários Serviço de Rede e Administrador que o diretório de dados padrão estava usando, caso contrário, causará o temido erro "iniciado e depois parado". Não exclua esse diretório até ter certeza de que seu novo está funcionando.

Se isso não funcionar, aqui está o plano de reversão:

net stop mysql
del "C:\ProgramData\MySQL\MySQL Server 5.6\my.ini"
net start mysql

0

Adicionando uma resposta atual para o servidor MySQL 8.0 no Windows 10 para saber como alterar o diretório do banco de dados após a instalação (procurei na internet e não encontrei uma solução e quase enlouqueci, então espero que isso ajude alguém).

Os primeiros passos são os mesmos das outras instruções usuais do MySQL Server 5.6. A única diferença é basicamente o terceiro passo:

  1. Vá para serviços (por exemplo, pressione WIN + R, digite services.msc, pressione enter) e pare o MySQL80serviço clicando com o botão direito do mouse e clicando em 'parar' (o nome do serviço é especificado durante a instalação, portanto, o nome pode ser diferente para você).

  2. Mova a pasta do banco de dados para onde quiser. A localização inicial é geralmente C:\ProgramData\MySQL\MySQL Server 8.0\data. Dentro da C:\ProgramData\MySQL\MySQL Server 8.0\pasta, deve haver um my.iniarquivo. Abra-o para editá-lo com o Notepad ++ (ou outro bloco de notas) e procure as linhas que mencionam o local antigo de alguma forma. Deve haver duas ocorrências (uma para datadir, uma para secure-file-priv). Renomeie ambos para o novo local correspondente (possivelmente basta renomear a datadirpeça, mas é melhor prevenir do que remediar). Inicialmente, eles geralmente ficariam assim:

    datadir=C:/ProgramData/MySQL/MySQL Server 8.0/Data

    e

    secure-file-priv="C:/ProgramData/MySQL/MySQL Server 8.0/Uploads"

    Portanto, se o novo local deve ser E:/MySQL/MySQL Server 8.0/..., renomeie as duas entradas desta maneira:

    datadir=E:/MySQL/MySQL Server 8.0/Data

    e

    secure-file-priv="E:/MySQL/MySQL Server 8.0/Uploads"
  3. Agora, depois de mover o banco de dados e renomear as entradas no my.iniarquivo, ANTES de reiniciar o serviço novamente, abra o editor de registro (por exemplo, pressione WIN + R, digite "regedit", pressione enter) e navegue até Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MySQL80(mais uma vez, este MySQL80é o nome do serviço MySQL que você escolheu durante a instalação e pode diferir de MySQL80) e clique com o botão direito do mouse na ImagePathentrada e escolha modificar. Deve haver uma string exibida semelhante a esta:

    "C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe" --defaults-file="C:\ProgramData\MySQL\MySQL Server 8.0\my.ini" MySQL80

    Este é basicamente o link para o arquivo exe real executado pelo serviço com um parâmetro adicional do arquivo de configuração, ou seja, o my.iniarquivo que modificamos anteriormente. Portanto, aqui, é claro, o caminho para o arquivo de configuração também precisa ser atualizado, uma vez que foi movido; portanto, neste exemplo, ele seria alterado para:

    "C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe" --defaults-file="E:\MySQL\MySQL Server 8.0\my.ini" MySQL80

    Observe que, é claro, apenas o caminho do arquivo de configuração precisa ser alterado.

  4. Agora o serviço pode ser iniciado novamente! Vá para os serviços novamente e clique com o botão direito do mouse no MySQL80serviço para escolher a opção 'Iniciar' novamente e ela deve reiniciar sem problemas. Se a etapa 3 for pulada, a reinicialização geralmente não funcionará!

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.