Linux如何快速进入MySQL?

前提条件

  1. 安装MySQL服务
    若未安装MySQL,先执行以下命令:

    • Ubuntu/Debian:
      sudo apt update
      sudo apt install mysql-server
    • CentOS/RHEL:
      sudo yum install mysql-server
      sudo systemctl start mysqld
  2. 确保MySQL服务已启动

    sudo systemctl status mysql  # 检查状态
    sudo systemctl start mysql   # 若未运行则启动

进入MySQL的两种常用方式

方式1:使用root用户本地登录

  1. 无密码登录(初始安装后)

    sudo mysql  # 直接进入MySQL命令行

    说明:部分系统(如Ubuntu)在安装时未设置root密码,需通过sudo权限进入。

  2. 密码登录(已设置密码)

    mysql -u root -p  # 回车后输入密码
    • -u:指定用户名(如root)。
    • -p:提示输入密码(密码输入时不可见)。

方式2:远程登录MySQL(需配置权限)

  1. 允许远程访问
    在MySQL命令行中执行:

    CREATE USER '用户名'@'远程IP' IDENTIFIED BY '密码';
    GRANT ALL PRIVILEGES ON *.* TO '用户名'@'远程IP' WITH GRANT OPTION;
    FLUSH PRIVILEGES;  -- 刷新权限

    远程IP替换为客户端IP(或允许所有IP)。

  2. 从另一台Linux机器登录

    mysql -h 服务器IP -u 用户名 -p
    • -h:指定MySQL服务器IP地址。

常见问题解决

问题1:忘记root密码

  1. 停止MySQL服务:
    sudo systemctl stop mysql
  2. 启动免密模式:
    sudo mysqld_safe --skip-grant-tables &
  3. 进入MySQL并重置密码:
    mysql -u root  # 无密码登录
    FLUSH PRIVILEGES;
    ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
    EXIT;
  4. 重启MySQL:
    sudo systemctl restart mysql

问题2:连接被拒绝(ERROR 1045)

  • 检查用户名/密码是否正确。
  • 确认用户是否有本地/远程登录权限(参考方式2的权限配置)。
  • 检查防火墙是否放行3306端口:
    sudo ufw allow 3306/tcp  # Ubuntu
    sudo firewall-cmd --add-port=3306/tcp --permanent  # CentOS

安全建议

  1. 避免使用root账户
    日常操作建议创建普通用户:

    CREATE USER 'workuser'@'localhost' IDENTIFIED BY '强密码';
    GRANT SELECT, INSERT ON 数据库名.* TO 'workuser'@'localhost';
  2. 隐藏命令行密码
    使用-p后不直接输入密码,防止密码泄露在历史记录中。
  3. 定期更新密码
    使用强密码(字母+数字+符号),并定期更换。

  • 本地登录:sudo mysql(无密码)或 mysql -u root -p(有密码)。
  • 远程登录:需配置用户权限后使用 mysql -h IP -u 用户 -p
  • 安全优先:最小化权限分配,避免敏感操作。

引用说明:本文参考MySQL 8.0官方文档的权限管理及Linux系统管理最佳实践,操作前请备份数据,生产环境建议结合具体需求调整权限策略。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/5771.html

(0)
酷番叔酷番叔
上一篇 2025年6月27日 21:52
下一篇 2025年6月27日 22:05

相关推荐

  • 在Linux系统中,如何使用ping命令测试IPv6地址的可达性?

    在Linux系统中,ping IPv6地址与ping IPv4地址在命令使用上存在一定差异,主要因为IPv6的网络协议架构和地址格式与IPv4不同,IPv6地址采用128位长度,通常以8组4位十六进制数表示(如2001:0db8:85a3:0000:0000:8a2e:0370:7334),且支持多种简化形式……

    2025年10月2日
    7800
  • linux 如何设置挂载

    Linux 中,使用 mount 命令挂载设备或分区,如 `mount /

    2025年8月18日
    10000
  • Linux删除用户目录的正确姿势?

    操作前必备准备备份重要数据删除目录不可逆,建议先备份:tar -czvf /backup/user_home_backup.tar.gz /home/username将 /home/username 替换为目标目录路径,确认用户状态确保用户已退出系统: who | grep 'username&#39……

    2025年6月28日
    14500
  • iso镜像文件如何安装linux系统?

    安装Linux系统是许多开发者和技术爱好者入门Linux的重要一步,而使用ISO文件安装是最常见的方式,下面将详细介绍从ISO文件下载到完成Linux系统安装的全流程,涵盖准备工作、启动盘制作、安装步骤及后续配置,帮助新手顺利完成系统部署,安装前的准备工作在开始安装前,需做好充分准备,确保安装过程顺利,避免因资……

    2025年9月23日
    10400
  • linux系统如何做定时

    nux系统定时任务可使用crontab命令,通过编辑定时任务表来设置定时

    2025年8月10日
    10300

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信