在 Linux 系统中,当您使用 root 用户安装 MySQL 后,系统会自动创建一个名为 mysql 的系统用户。这个 mysql 用户主要用于管理 MySQL 服务的运行,通常是没有登录系统的权限的。如果您希望使这个 mysql 用户能够登录到系统,您需要设置一个密码并更改其登录壳(shell)。

以下是步骤:

  1. 设置密码:
    打开终端,并使用 root 用户执行以下命令来为 mysql 用户设置密码:

    sudo passwd mysql
    

    系统会提示您输入并确认新密码。

  2. 更改登录壳:
    默认情况下,mysql 用户可能没有有效的登录壳,通常是 /bin/false/sbin/nologin。您需要将其更改为有效的登录壳,如 /bin/bash。使用以下命令来更改:

    sudo usermod -s /bin/bash mysql
    

问题记录:登录后出现这种情况怎么解决:


Linux使用root用户安装完MySQL软件后,配置MySQL这个普通用户登录-LMLPHP

通过修改 .bash_profile 解决了问题。以下所采取的解决方案的完整总结:

  1. 打开 .bash_profile 文件:
    您使用 vim 编辑器打开了位于您的用户主目录下的 .bash_profile 文件。这个文件是 bash shell 在登录时读取的配置文件,用于设置环境变量和用户偏好。

  2. 添加自定义 Shell 提示符配置:
    .bash_profile 文件中,您添加了以下行:

    export PS1="[\u@\h \W]\$ "
    

    这行命令的含义是:

    • export:设置环境变量。
    • PS1:这是 bash shell 的环境变量,用于定义命令提示符的外观和内容。
    • "[\u@\h \W]\$ ":这是您设置的新提示符格式。
      • \u:当前登录的用户名。
      • \h:当前的主机名。
      • \W:当前工作目录的基本名称。
      • \$ :提示符符号(对于普通用户是 $,对于 root 用户是 #`)。
  3. 应用更改:
    保存 .bash_profile 文件后,为了使更改立即生效,您需要重新加载配置文件。这可以通过注销再登录,或者在命令行中输入 source ~/.bash_profile 来实现。

经过这些步骤,您的 shell 提示符从默认的 -bash-4.2$ 更改为了新的格式,显示当前登录的用户名、主机名和当前工作目录,从而提供了更多的上下文信息和更佳的用户体验。

完成这些步骤后,mysql 用户就应该能够登录系统了。但是,请注意,出于安全考虑,通常不建议让用于运行服务的系统用户拥有登录系统的能力。如果您的目的只是为了管理 MySQL,建议使用其他具有适当权限的系统用户或通过 MySQL 的 root 账户来进行管理。

12-07 11:04