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系统如何查询进程是否存在?

    在Linux系统中,查询进程是否存在是系统管理和故障排查中的常见操作,无论是监控服务状态、定位异常进程还是编写自动化脚本,都需要掌握多种查询方法,Linux提供了丰富的命令工具,从基础的ps到高效的pgrep,再到系统服务专用的systemctl,每种方法都有其适用场景和优势,下面将详细介绍这些查询进程的方法……

    2025年9月16日
    13300
  • Linux系统中R文件如何运行并获取其运行时间?

    在Linux环境下运行R语言脚本文件(通常以.R为扩展名)并测量其执行时间,是数据分析和科学计算中的常见需求,R脚本通常包含一系列R命令,用于数据处理、模型训练或可视化等任务,而运行时间测量则有助于评估代码效率、优化性能瓶颈,本文将详细介绍R脚本在Linux下的执行方法、时间测量技巧及相关注意事项,R脚本的编写……

    2025年9月9日
    12100
  • Ubuntu还是Debian更合适?

    Linux安装网卡驱动详细指南为什么需要手动安装网卡驱动?Linux内核通常自带主流网卡驱动(如Intel、Realtek常见型号),但以下情况需手动安装:新硬件兼容滞后:新型号网卡尚未被内核支持厂商专属驱动:部分企业级网卡(如Broadcom、某些无线网卡)需专用驱动功能限制:开源驱动可能缺少高级功能(如SR……

    2025年7月26日
    16000
  • Linux系统如何停止运行中的服务?

    Linux系统中停止服务的方法因服务管理工具的不同而有所差异,常见的服务管理工具包括Systemd、SysVinit、Upstart等,不同发行版可能默认使用不同的工具,以下将分别介绍各类工具下停止服务的具体操作及注意事项,使用Systemd停止服务(主流发行版:Ubuntu 16.04+、CentOS 7……

    2025年10月4日
    13800
  • Ubuntu更新源错误如何快速修复?

    方法1:直接读取用户配置文件(推荐)命令:cat /etc/passwd说明:/etc/passwd 是存储用户信息的核心文件,每行代表一个用户,包含7个字段(用户名:密码占位符:UID:GID:描述:主目录:登录Shell),输出示例: root:x:0:0:root:/root:/bin/bashalice……

    2025年7月10日
    17600

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信