Armazene cada banco de dados em um diretório diferente

3

Existe alguma maneira de armazenar cada banco de dados mysql em um diretório separado? Eu poderia ligar simbolicamente os diretórios em / var / lib / mysql para cada banco de dados, mas eu queria saber se existe uma maneira interna de fazer isso.

Obrigado

    
por Andrei Serdeliuc 27.01.2011 / 14:47

3 respostas

2

Nenhuma maneira interna de fazer isso, eu tenho medo, a maneira como o mysql funciona é apenas definir o datadir e então todos os bancos de dados devem estar lá em seus diretórios.

Se você quiser fazer isso, certifique-se de que o usuário em que o mysql está rodando tenha acesso aos diretórios finais, e que os links de software devem estar bem, eu acho.

    
por 27.01.2011 / 14:51
1

Surpreendentemente, o único link simbólico de tabelas MyISAM individuais | é feito pelo comando CREATE TABLE da seguinte forma:

CREATE TABLE
(
...
) ENGINE=MyISAM
DATA_DIRECTORY='absolute path of data folder'
INDEX_DIRECTORY='absolute path of index folder';

Acesse o link e localize as opções DATA_DIRECTORY e INDEX_DIRECTORY.

Apenas o arquivo .frm permanece no servidor original.

BTW Essas opções não funcionam na versão do MySQL para Windows. Essas opções não estão disponíveis para o InnoDB.

    
por 04.02.2011 / 23:15
1

link :

With multiple tablespaces enabled, InnoDB stores each newly created table in its own tbl_name.ibd file in the appropriate database directory

    
por 18.04.2012 / 22:22

Tags