密码输入为何不可见?

要在命令行中使用MySQL数据库,需掌握基础连接、SQL操作及管理工具,以下是详细步骤(以Linux/macOS为例,Windows需将终端命令替换为CMD/PowerShell):


准备工作

  1. 安装MySQL

    • Ubuntu/Debian:
      sudo apt update && sudo apt install mysql-server
    • CentOS/RHEL:
      sudo yum install mysql-server
    • macOS (推荐Homebrew):
      brew install mysql
  2. 启动MySQL服务

    sudo systemctl start mysql  # Linux
    brew services start mysql   # macOS
  3. 设置root密码
    首次安装后运行安全配置向导:

    sudo mysql_secure_installation

连接MySQL服务器

方式1:本地连接(无密码)

sudo mysql -u root  # Linux默认免密

方式2:带密码连接

mysql -u 用户名 -p```
#### 方式3:指定主机和端口
```bash
mysql -h 主机地址 -P 端口号 -u 用户名 -p
# 示例:mysql -h 127.0.0.1 -P 3306 -u root -p

注意:避免在命令中直接写密码(如 -p密码),以免泄露。


基础数据库操作

查看所有数据库

SHOW DATABASES;

创建/删除数据库

CREATE DATABASE 数据库名;  -- 创建
DROP DATABASE 数据库名;    -- 删除

选择数据库

USE 数据库名;

查看当前数据库的表

SHOW TABLES;

执行SQL查询

SELECT * FROM 表名;       -- 查询数据
DESCRIBE 表名;           -- 查看表结构

退出MySQL命令行

EXIT; 或 \q

导入/导出数据

导入SQL文件(恢复备份)

mysql -u 用户名 -p 数据库名 < 文件路径.sql

导出整个数据库(备份)

mysqldump -u 用户名 -p 数据库名 > 备份文件.sql

导出单张表

mysqldump -u 用户名 -p 数据库名 表名 > 表备份.sql

用户权限管理

创建用户并授权

CREATE USER '用户名'@'localhost' IDENTIFIED BY '密码';
GRANT ALL PRIVILEGES ON 数据库名.* TO '用户名'@'localhost';
FLUSH PRIVILEGES;  -- 刷新权限

查看用户权限

SHOW GRANTS FOR '用户名'@'localhost';

常见问题解决

  1. 连接被拒绝

    • 检查MySQL服务状态:sudo systemctl status mysql
    • 确认防火墙开放3306端口。
  2. 忘记root密码

    sudo systemctl stop mysql          # 停止服务
    sudo mysqld_safe --skip-grant-tables &  # 跳过权限验证
    mysql -u root

    在MySQL中重置密码:

    ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
  3. 命令未找到(mysql/mysqldump)
    将MySQL添加到系统路径:

    echo 'export PATH=$PATH:/usr/local/mysql/bin' >> ~/.bashrc
    source ~/.bashrc

安全建议

  1. 避免使用root账户日常操作,创建专用用户。
  2. 定期备份关键数据:
    mysqldump -u root -p --all-databases > full_backup.sql
  3. 生产环境禁用远程root登录。

命令行操作MySQL是数据库管理的核心技能,适合快速执行任务、自动化脚本及服务器维护,熟练掌握后,可结合Python/Shell脚本实现高效运维,建议通过官方文档深化学习:

引用说明

  • MySQL 8.0官方手册:https://dev.mysql.com/doc/refman/8.0/en/
  • mysqldump备份工具指南:https://dev.mysql.com/doc/refman/8.0/en/mysqldump.html
  • 权限管理参考:https://dev.mysql.com/doc/refman/8.0/en/privilege-system.html

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

(0)
酷番叔酷番叔
上一篇 2025年6月24日 23:52
下一篇 2025年6月25日 00:18

相关推荐

  • 安全操作不当隐患有多大?

    命令别名的作用提高效率:将长命令(如sudo apt update && sudo apt upgrade)简化为短指令(如update),减少错误:避免频繁输入易错的长参数,个性化定制:根据习惯创建易记的快捷操作(如ll替代ls -alF),临时设置别名(当前终端有效)通过alias命令直接设……

    2025年7月7日
    1000
  • Linux命令行如何提升系统操作效率?

    打开终端(命令输入环境)图形界面方式大多数Linux发行版(如Ubuntu、Fedora)可通过快捷键 Ctrl+Alt+T 直接打开终端,或通过应用菜单搜索:点击桌面左上角“活动”/“应用程序” → 输入“Terminal” → 选择终端程序,纯文本模式按 Ctrl+Alt+F1~F6 切换到虚拟控制台(无图……

    3天前
    800
  • Windows运行命令如何秒开所有版本?

    通用快捷键法(推荐)适用系统: Windows 7/8/8.1/10/11操作步骤:同时按下键盘上的 Win(Windows徽标键) + R,屏幕左下角将立即弹出“运行”对话框,优势: 无需鼠标操作,0.5秒内完成,适合高频使用,通过开始菜单/搜索栏▶ Windows 10 & 11点击任务栏左侧的 开……

    2025年7月9日
    1100
  • 为什么Linux命令不是魔法?

    Linux命令本质是用户与系统内核交互的文本接口,通过Shell解释器将指令转化为系统调用,触发内核执行底层操作(如文件管理、进程控制、硬件访问),实现对计算机资源的精确操控。

    2025年6月13日
    1300
  • Ubuntu命令行终极指南,30分钟精通系统管理

    打开终端的4种方法快捷键启动Ctrl + Alt + T(适用于所有Ubuntu版本)图形界面启动点击屏幕左上角”Activities” → 搜索”Terminal”或通过应用菜单:Applications → Utilities → Terminal虚拟控制台按 Ctrl + Alt + F1~F6 进入纯命……

    2025年6月20日
    1400

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信