我正在我们的其中一台服务器上安装 MySQL。我是ec2-user
,我试图安装在ec2-user
主目录中,但允许用户访问该目录mysql
。
但是,尽管最初以登录身份登录mysql
可以让我访问该目录,但是如果我离开,我却找不到返回该目录的方法:
-bash-4.1$ whoami
mysql
-bash-4.1$ ls
bin COPYING data docs include INSTALL-BINARY lib man my.cnf my-new.cnf mysql-5.6.24-linux-glibc2.5-x86_64 mysql-test README scripts share sql-bench support-files
-bash-4.1$ pwd
/home/ec2-user/install/mysql-5.6.24-linux-glibc2.5-x86_64
-bash-4.1$ ls -l /usr/local
total 44
drwxr-xr-x 2 mysql mysql 4096 Jan 6 2012 bin
drwxr-xr-x 2 mysql mysql 4096 Jan 6 2012 etc
drwxr-xr-x 2 mysql mysql 4096 Jan 6 2012 games
drwxr-xr-x 2 mysql mysql 4096 Jan 6 2012 include
drwxr-xr-x 2 mysql mysql 4096 Jan 6 2012 lib
drwxr-xr-x 3 mysql mysql 4096 Oct 8 2014 lib64
drwxr-xr-x 2 mysql mysql 4096 Jan 6 2012 libexec
lrwxrwxrwx 1 mysql mysql 69 Apr 18 13:27 mysql -> /home/ec2-user/install/mysql-5.6.24-linux-glibc2.5-x86_64
drwxr-xr-x 2 mysql mysql 4096 Jan 6 2012 sbin
drwxr-xr-x 6 mysql mysql 4096 Oct 8 2014 share
drwxr-xr-x 2 mysql mysql 4096 Jan 6 2012 src
-bash-4.1$ cd /usr/local/mysql
-bash: cd: /usr/local/mysql: Permission denied
我做错了什么?我应该以用户身份执行整个安装吗mysql
?
答案1
/usr/local/mysql
链接到/home/ec2-user/install/mysql-5.6.24-linux-glibc2.5-x86_64
,虽然链接本身具有默认链接权限,但我们仍然不知道权限是什么/home/ec2-user/install/mysql-5.6.24-linux-glibc2.5-x86_64
,我敢打赌这就是问题的根源。
输出是什么ls -la /home/ec2-user/install/mysql-5.6.24-linux-glibc2.5-x86_64
? a 所代表的条目.
就是我们感兴趣的。我正在考虑以下之一:
- 所有者(或组)不正确。在本例中,应设置为 mysql 进程运行时的所有者
mysql
- 权限不正确。权限可能有很多,但我认为应该是 700(所有者可以做任何事情,其他人不得触碰)
- 以上两者的结合。