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系统本身默认使用英文界面,且输入法机制与Windows有所不同,因此需要通过特定的配置和安装输入法框架来实现中文输入,本文将详细介绍在Linux中输入中文的完整流程,包括输入法框架的选择、安装、配置,以及常见问题的解决方法,Linux中文输入的基……

    2025年10月6日
    12300
  • 如何在Linux系统中具体移动文件夹的操作步骤有哪些?

    在Linux系统中,移动文件夹内的内容或文件夹本身是日常管理文件时常见的操作,核心命令是mv(move),mv命令不仅能实现文件和目录的移动,还支持重命名操作,其基本语法为mv [选项] 源文件/目录 目标位置,以下从不同场景出发,详细介绍如何在Linux上移动文件夹及其内容,并涵盖常用选项和注意事项,移动文件……

    2025年10月1日
    10700
  • Linux如何开放UDP端口?

    理解UDP通信原理UDP(User Datagram Protocol)是一种无连接的传输层协议,适用于实时性要求高、允许少量丢包的应用(如DNS查询、VoIP),开启UDP需两步:服务配置:确保应用程序监听UDP端口,防火墙放行:允许外部流量访问该端口,配置服务监听UDP端口以开放UDP端口12345为例(替……

    2025年8月6日
    15200
  • 8GB U盘选USB 3.0,传输快10倍?

    目标Linux发行版的ISO镜像文件(从官方渠道下载,如Ubuntu官网、Fedora站点等)一台可用的计算机(Windows/macOS/Linux系统均可)重要提醒备份U盘数据:制作过程将永久清除U盘所有内容验证ISO完整性:下载后务必核对SHA256校验值(官方通常提供校验文件)设备兼容性:确认目标电脑支……

    2025年7月15日
    14200
  • Linux应用程序如何实现定时任务的调度与执行机制?

    Linux应用程序中,定时功能是常见需求,广泛应用于周期性任务(如数据采集、日志轮转)、超时控制(如网络请求超时)、定时触发(如闹钟提醒)等场景,实现定时功能的方式多样,需根据精度、阻塞特性、并发需求等选择合适的方法,阻塞式定时:基础但场景有限最简单的定时方式是通过sleep(秒级)、usleep(微秒级)或a……

    2025年9月16日
    12600

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信