Como encontrar o diretório de dados mysql na linha de comando no windows
186
Em linux eu poderia encontrar o diretório de instalação do MySQL com o comando which mysql. Mas não consegui encontrar nenhum no Windows. Eu tentei echo %path%e resultou muitos caminhos junto com o caminho para o mysql bin.
Eu queria encontrar o diretório de dados mysql na linha de comando do Windows para uso no programa em lote. Eu também gostaria de encontrar o diretório de dados mysql na linha de comando do linux. É possível? ou como podemos fazer isso?
No meu caso, o diretório de dados do mysql está na pasta de instalação, ou seja, ..MYSQL\mysql server 5\datapode ser instalado em qualquer unidade, no entanto. Quero recuperá-lo da linha de comando.
Ou se você deseja apenas o diretório de dados, use:
mysql -uUSER -p -e 'SHOW VARIABLES WHERE Variable_Name = "datadir"'
Esses comandos também funcionam no Windows, mas você precisa inverter as aspas simples e duplas .
Btw, ao executar which mysqlno Linux como você disse, você não obterá o diretório de instalação no Linux. Você obterá apenas o caminho binário, que está /usr/binno Linux, mas verá que a instalação do mysql está usando várias pastas para armazenar arquivos.
Se você precisar do valor de datadir como saída, e somente isso, sem cabeçalhos de coluna, etc., mas você não tiver um ambiente GNU (awk | grep | sed ...), use a seguinte linha de comando:
mysql -s -N -uUSER -p information_schema -e 'SELECT Variable_Value FROM GLOBAL_VARIABLES WHERE Variable_Name = "datadir"'
O comando selecionará o valor somente no information_schemabanco de dados interno do mysql e desabilitará a saída tabular e os cabeçalhos das colunas.
Eu usei mysql -uroot -p -e 'SHOW VARIABLES WHERE Nome da variável = "datadir" | grep "datadir" | awk "{print $ 2}" 'para encontrar o caminho real do datadir no linux. Como encontrar apenas esse caminho no Windows?
Prabhu
1
@ Prabhu Você pode fazer isso apenas com o mysqlcomando Nenhuma outra ferramenta é necessária. Verifique minha atualização
hek2mgl
O comando executa ok no linux. Ele não executa bem no Windows XP. o primeiro comando dá erro - você tem erro na sintaxe sql perto de onde Variable_Name = 'dirname'. O segundo comando dá erro - information_schema banco de dados desconhecido
Prabhu
1
Para fazer isso funcionar no Windows, basta inverter as aspas duplas / simples:mysql -uUSER -p -e "SHOW VARIABLES WHERE Variable_Name LIKE '%dir'"
Leonardo Herrera
1
Obrigado por isso! Executando "SHOW VARIABLES WHERE Nome da variável =" datadir ""; no meu banco de dados phpmyadmin me ajudou a encontrar o local do diretório dabase.
mysql
comando Nenhuma outra ferramenta é necessária. Verifique minha atualizaçãomysql -uUSER -p -e "SHOW VARIABLES WHERE Variable_Name LIKE '%dir'"
Você pode tentar isso-
PS- Funciona em todas as plataformas.
fonte
se você deseja encontrar o datadir no linux ou no windows, você pode fazer o seguinte comando
mysql -uUSER -p -e 'SHOW VARIABLES WHERE Variable_Name = "datadir"'
Se você estiver interessado em encontrar o datadir, use o comando grep & awk
fonte
Saída no Windows:
você pode simplesmente usar este comando, é muito fácil!
1. sem senha do MySQL:
2. tem senha do MySQL:
fonte
Você pode ver a lista completa de opções do servidor MySQL executando
Por exemplo, para descobrir o caminho para o diretório de dados no Linux, você pode executar:
Exemplo de saída:
fonte
fonte
Verifique se o
Data
diretório está em"C:\ProgramData\MySQL\MySQL Server 5.7\Data"
. É aqui que está no meu computador. Alguém pode achar isso útil.fonte
Use o comando abaixo da interface CLI
fonte