linux部署mysql,初始化时一直提示mysql.log无权限, 无论怎么用chmod赋权结果还是一样,一直报无权限,应该是哪里的问题,怎么解决
首先需要确保 /var/lib/mysql 目录必须存在,而且这个目录的所有者和所有组必须是 mysql 用户,所以在初始化的时候,你需要先执行下面的操作
# 先建立mysql用户
useradd -M mysql
#创建数据目录 /var/lib/mysql ,并授权mysql用户对这个目录有所有的操作权限
mkdir -p /var/lib/mysql
chown mysql.mysql /var/lib/mysql -R
【以下回答由 GPT 生成】
根据错误日志信息,可以看出问题出在文件 /var/lib/mysql/mysql.log
的权限上。
解决步骤如下:
sudo su
ls -l
命令确认 /var/lib/mysql/mysql.log
的权限和所有者。ls -l /var/lib/mysql/mysql.log
mysql
用户,使用以下命令将该文件的所有权转移到 mysql
用户:chown mysql:mysql /var/lib/mysql/mysql.log
chmod
命令赋予 /var/lib/mysql/mysql.log
文件的读、写和执行权限给 mysql
用户:chmod 644 /var/lib/mysql/mysql.log
cd /var/lib/mysql/mysql-8.1.0/bin/
./mysqld --defaults-file=/etc/my.cnf --basedir=/var/lib/mysql/mysql-8.1.0/ --datadir=/var/lib/mysql/ --user=mysql --initialize
/var/lib/mysql
目录及其子目录的权限和所有者。可以使用以下命令:ls -l /var/lib/mysql
ls -l /var/lib/mysql/*
mysql
用户并赋予相应的权限:chown -R mysql:mysql /var/lib/mysql
chmod -R 755 /var/lib/mysql
如果以上步骤仍然不能解决问题,请确保你的操作系统中没有其他配置或策略限制权限,并且 MySQL 的配置文件 /etc/my.cnf
中没有特殊的设置。
希望这些步骤可以解决你的问题,如果还有其他疑问,请随时提问。
【相关推荐】