Eu estava tentando separar índices de banco de dados de ibdata1
Eu segui as etapas em qual-é-a-melhor-maneira-de-reduzir-o-tamanho-de-ibdata-em-mysql
Eu descartei dados, descartei bancos de dados e iniciei o serviço mysql.
Eu recebi o seguinte erro e agora estou preso:
mysql -u root -p < alldb.sql
mysql: unknown option '--innodb_file_per_table'
Qual é a solução agora?
Quando eu removo as linhas abaixo de my.cnf
tudo funciona bem:
[mysql]
innodb_file_per_table
innodb_flush_method=O_DIRECT
innodb_log_file_size=1G
innodb_buffer_pool_size=4G
Por que innodb_file_per_table
é uma opção desconhecida?
O estranho é que posso definir innodb_file_per_table
dinamicamente e separar o .ibd
arquivo quando os altero para o mecanismo InnoDB.
EDIT:
Deve ser uma opção desconhecida, pois coloquei abaixo [mysql]
não [mysqld]
. Fiz o processo novamente e agora funciona perfeitamente. ibd
os arquivos estão em suas respectivas pastas de banco de dados.
Ufa...
Problema resolvido:
Deve ser uma opção desconhecida, pois coloquei abaixo de [mysql] e não [mysqld]. Coloquei todos os parâmetros abaixo
[mysqld]
e fiz o processo novamente e agora funciona muito bem.ibd
os arquivos estão em suas respectivas pastas de banco de dados.Parece que seu my.cnf está sem o valor para
innodb_file_per_table
. Tente adicionar um valor para a opção, assim:innodb_file_per_table=1