Home  >  Article  >  Database  >  mysql innodb创建数据文件失败

mysql innodb创建数据文件失败

WBOY
WBOYOriginal
2016-06-07 17:18:55866browse

/etc/my.cnf配置 [mysqld]datadir=/var/lib/mysqlsocket=/var/lib/mysql/mysql.sockuser=mysql# Default to using old password

/etc/my.cnf配置

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1

# Disabling symbolic-links is recommended to prevent assorted security risks;
# to do so, uncomment this line:
# symbolic-links=0

default-character-set=utf8
default-storage-engine=innodb
# Uncomment the following if you are using InnoDB tables
innodb_data_home_dir = /var/mysql/innodb/
innodb_data_file_path = ibdata1:2000M;ibdata2:10M:autoextend
innodb_log_group_home_dir = /var/mysql/innodb/log/
innodb_log_arch_dir = /var/mysql/innodb/log/

# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high
innodb_buffer_pool_size = 1024M
innodb_additional_mem_pool_size = 20M
# Set .._log_file_size to 25 % of buffer pool size
innodb_log_file_size = 192M
innodb_log_buffer_size = 18M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50

[client]
default-character-set=gbk

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

启动mysqld失败,目录权限已设置为777, 并已 /usr/bin/mysql_install_db --user=mysql

原因似乎是innodb的数据目录必须处于datadir配置的子目录下!

查看日志 /var/log/mysqld.log

.........................

120817 13:08:17  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 /var/mysql/innodb/ibdata1
InnoDB: File operation call: 'create'.
InnoDB: Cannot continue operation.
120817 13:08:17  mysqld ended

修改/etc/my.cnf配置

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1

# Disabling symbolic-links is recommended to prevent assorted security risks;
# to do so, uncomment this line:
# symbolic-links=0

default-character-set=utf8
default-storage-engine=innodb
# Uncomment the following if you are using InnoDB tables
innodb_data_home_dir=/var/lib/mysql/innodb/
innodb_data_file_path=ibdata1:2000M;ibdata2:10M:autoextend
innodb_log_group_home_dir=/var/lib/mysql/innodb/log/
innodb_log_arch_dir=/var/lib/mysql/innodb/log/
# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high
innodb_buffer_pool_size=1024M
innodb_additional_mem_pool_size=20M
# Set .._log_file_size to 25 % of buffer pool size
innodb_log_file_size=192M
innodb_log_buffer_size=18M
innodb_flush_log_at_trx_commit=1
innodb_lock_wait_timeout=50

[client]
default-character-set=gbk

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

启动成功。

linux

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn