¿Cómo le doy a mysqld acceso de escritura a un directorio?

3

Estoy ejecutando OSX ahora mismo e intento ejecutar un proceso mysqld y veo el siguiente error:

 $ /usr/local/mysql/bin/mysqld --user=root
111026 11:05:08 [Warning] Can't create test file /usr/local/mysql-5.5.15-osx10.6-x86_64/data/XXX.lower-test
111026 11:05:08 [Warning] Can't create test file /usr/local/mysql-5.5.15-osx10.6-x86_64/data/XXX.lower-test
111026 11:05:08 [Warning] One can only use the --user switch if running as root

111026 11:05:08 [Note] Plugin 'FEDERATED' is disabled.
/usr/local/mysql/bin/mysqld: Can't find file: './mysql/plugin.frm' (errno: 13)
111026 11:05:08 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
111026 11:05:08 InnoDB: The InnoDB memory heap is disabled
111026 11:05:08 InnoDB: Mutexes and rw_locks use GCC atomic builtins
111026 11:05:08 InnoDB: Compressed tables use zlib 1.2.3
111026 11:05:08 InnoDB: Initializing buffer pool, size = 128.0M
111026 11:05:08 InnoDB: Completed initialization of buffer pool
111026 11:05:08  InnoDB: Operating system error number 13 in a file operation.
InnoDB: The error means mysqld does not have the access rights to
InnoDB: the directory.
InnoDB: File name ./ibdata1
InnoDB: File operation call: 'open'.
InnoDB: Cannot continue operation.

Entiendo que el problema es que no estoy usando sudo, mi cuenta de usuario actual no tiene acceso de escritura a

/usr/local/mysql-5.5.15-osx10.6-x86_64/data/

Estoy tratando de lograr dos cosas diferentes

  1. Proporcione al proceso mysqld acceso de escritura a ese directorio sin usar chmod 700 o lo que sea. Estoy intentando usar chown y no funciona

  2. Cree un script para que el proceso mysqld comience en el arranque

¿Puede alguien ayudarme?

    
pregunta 26.10.2011 - 17:10

1 respuesta

3

Según el uid que esté utilizando mysqld, chmod 700 en el directorio de datos podría no ayudar. Puedes hacer lo siguiente:

  • chmod 777 /usr/local/mysql-5.5.15-osx10.6-x86_64/data/
  • Startup mysqld nuevamente
  • ls -l /usr/local/mysql-5.5.15-osx10.6-x86_64/data/ para identificar al propietario de los archivos creados
  • chown OWNER /usr/local/mysql-5.5.15-osx10.6-x86_64/data
  • chmod 700 /usr/local/mysql-5.5.15-osx10.6-x86_64/data/
respondido por el nohillside 30.10.2011 - 09:27

Lea otras preguntas en las etiquetas