有没有办法让root用户在不知道密码的情况下以特权访问mysql
?
虽然不是专家,但我更习惯使用 PostgreSql,而且我知道使用后者的默认 Debian 安装,我只需输入:
# su - postgres
$ psql
我对正在使用的服务器具有 root 访问权限,但管理员尚未为我创建 MySQL 帐户,因此无法访问。
考虑到我很可能篡改MySQL文件,我想一定有一种方法可以让我登录,但我还没有找到。
有一个mysql用户,但似乎不能像postgres用户一样工作:
# su - mysql
# whoami
root
# mysql
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
最佳答案
有人指出这不是一个好的做法,但我已经找到了方法。
mysqld
有一个名为 --init-file
的命令行开关它指的是包含服务器启动时执行的 SQL 命令的文件。
所以我可以使用这些命令为自己创建一个用户:
# echo CREATE USER 'scozy'@'localhost' IDENTIFIED BY '****'; > /root/init.sql
# /etc/init.d/mysql stop
# mysqld --init-file=/root/init.sql
# /etc/init.d/mysql restart
关于mysql - 无需密码访问mysql,以操作系统root身份运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24121219/