gpt4 book ai didi

从 deb 安装 MySQL,权限问题

转载 作者:太空宇宙 更新时间:2023-11-04 08:59:12 24 4
gpt4 key购买 nike

我正在尝试通过 deb 包在 ubuntu 14.04 上安装 MySQL。我在启动 mysql 服务器时遇到问题,看起来像是权限问题。我按照概述的步骤 here .下载/解压/安装 deb tar 包。

sudo apt-get install libaio1 
tar -xvf mysql-server_5.7.4-m14-2ubuntu14.04_amd64.deb-bundle.tar
md5sum mysql-server_5.7.4-m14-2ubuntu14.04_amd64.deb-bundle.tar
sudo dpkg -i mysql-common_5.7.4-m14-2ubuntu14.04_amd64.deb
sudo dpkg -i mysql-community-server_5.7.4-m14-2ubuntu14.04_amd64.deb
sudo dpkg -i mysql-community-client_5.7.4-m14-2ubuntu14.04_amd64.deb
sudo dpkg -i libmysqlclient18_5.7.4-m14-2ubuntu14.04_amd64.deb

这是文件在我的系统上的安装位置:所有配置文件(如 my.cnf)都在 /etc 下。所有二进制文件、库、 header 等都在 /usr 下。数据目录在 /var 下。

正在关注 these instructions

我创建一个 mysql 组和用户:

groupadd mysql
useradd -r -g mysql mysql

我将 mysql 脚本的所有权更改为 mysql(按照说明,但怀疑这是必要的)

cd /usr/bin
sudo chown mysql mysq*
sudo chgrp mysql mysq*

我运行 mysql_install_db 来设置授权表

sudo mysql_install_db --user=mysql

我将 mysql 脚本的所有权和组切换回 root。

cd /usr/bin
sudo chown root mysq*
sudo chgrp root mysq*

我将 /data 的所有权和组更改为 mysql。位置是 /var/lib/mysql

cd /var/lib
ls -l mysql
total 122896
-rw-rw-rw- 1 mysql mysql 56 Jul 26 10:17 auto.cnf
-rw-rw-rw- 1 mysql mysql 12582912 Jul 26 10:17 ibdata1
-rw-rw-rw- 1 mysql mysql 50331648 Jul 26 10:17 ib_logfile0
-rw-rw-rw- 1 mysql mysql 50331648 Jul 24 17:36 ib_logfile1
-rw-rw---- 1 mysql mysql 12582912 Jul 26 10:17 ibtmp1
drwxrwxrw- 2 mysql mysql 4096 Jul 24 17:36 mysql
drwxrw-rw- 2 mysql mysql 4096 Jul 24 17:36 performance_schema
drwxrw-rw- 2 mysql mysql 4096 Jul 24 17:36 test

现在,当我尝试启动 mysql 服务器时,出现权限错误:

mysqld_safe --user=mysql &
[4] 5680
/var/lib$ 140727 00:42:17 mysqld_safe Logging to '/var/log/mysql/error.log'.
cat: /var/run/mysqld/mysqld.pid: Permission denied
rm: cannot remove ‘/var/run/mysqld/mysqld.pid’: Permission denied
140727 00:42:17 mysqld_safe Fatal error: Can't remove the pid file:
/var/run/mysqld/mysqld.pid
Please remove it manually and start /usr/bin/mysqld_safe again;
mysqld daemon not started
/usr/bin/mysqld_safe: 129: /usr/bin/mysqld_safe: cannot create /var/log/mysql/error.log: Permission denied

同样,如果我尝试以 root 身份启动服务器:

mysqld_safe -p -u root
140727 00:54:08 mysqld_safe Logging to '/var/log/mysql/error.log'.
140727 00:54:08 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
/usr/bin/mysqld_safe: 129: /usr/bin/mysqld_safe: cannot create /var/log/mysql/error.log: Permission denied
/usr/bin/mysqld_safe: 1: eval: cannot create /var/log/mysql/error.log: Permission denied
140727 00:54:08 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
/usr/bin/mysqld_safe: 129: /usr/bin/mysqld_safe: cannot create /var/log/mysql/error.log: Permission denied

显然有很多地方我应该更改权限,这看起来不像要走的路。三个问题:

  1. 是否有明显的地方出错了,或者我应该卸载并 apt-get 一切?

  2. 对于服务器需要更新的所有文件,我是否应该拥有 mysql 所有者和 mysql 组?

  3. 是否有这些文件所在位置的完整列表?

最佳答案

你不能创建/var/log/mysql/error.log。目录不存在先创建

sudo mkdir -p /var/log/mysql

接下来,更改所有权

sudo chown -R mysql /var/log/mysql

然后再次尝试以 root 身份启动服务器:

sudo mysqld_safe --user=mysql &

如果服务器未启动,请在此处粘贴错误消息

关于从 deb 安装 MySQL,权限问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24979117/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com