mysql -u 用户名 -p
登录,输入密码后进入交互环境,随后可执行SQL命令管理数据库,如SHOW DATABASES;
、CREATE DATABASE 库名;
、USE 库名;
及SELECT * FROM 表名;
等操作,退出时输入exit
或quit
。环境准备
-
安装MySQL
- Windows:下载官方安装包运行,勾选”Add to PATH”
- Linux/macOS:终端执行
sudo apt install mysql-server # Ubuntu/Debian brew install mysql # macOS
-
启动服务
sudo systemctl start mysql # Linux mysql.server start # macOS # Windows在服务面板启动MySQL服务
-
安全初始化(首次安装)
sudo mysql_secure_installation
按提示设置root密码、删除测试数据库等。
连接MySQL服务器
mysql -u 用户名 -p -h 主机地址 -P 端口
- 示例:
mysql -u root -p # 本地默认连接(端口3306) mysql -u admin -p -h 192.168.1.100 -P 3307 # 远程连接
-p
会提示输入密码(密码输入时不可见)
核心操作命令
数据库管理
命令 | 作用 |
---|---|
CREATE DATABASE dbname; |
创建数据库 |
SHOW DATABASES; |
查看所有数据库 |
USE dbname; |
切换数据库 |
DROP DATABASE dbname; |
删除数据库 |
数据表操作
-- 创建表 CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(50) NOT NULL, email VARCHAR(100) UNIQUE ); -- 查看表结构 DESCRIBE users; -- 删除表 DROP TABLE users;
数据增删改查(CRUD)
-- 插入数据 INSERT INTO users (name, email) VALUES ('张三', 'zhangsan@example.com'); -- 查询数据 SELECT * FROM users; -- 查询所有 SELECT name FROM users WHERE id = 1; -- 条件查询 -- 更新数据 UPDATE users SET email = 'new@example.com' WHERE id = 1; -- 删除数据 DELETE FROM users WHERE id = 1;
用户权限管理
-- 创建用户 CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password'; -- 授权 GRANT SELECT, INSERT ON dbname.* TO 'newuser'@'localhost'; -- 刷新权限 FLUSH PRIVILEGES; -- 查看权限 SHOW GRANTS FOR 'newuser'@'localhost';
高级操作
导入/导出数据库
# 导出整个数据库(终端执行) mysqldump -u 用户名 -p 数据库名 > backup.sql # 导入数据 mysql -u 用户名 -p 数据库名 < backup.sql
批处理执行SQL文件
mysql -u root -p < script.sql
查看运行状态
SHOW STATUS; -- 服务器状态 SHOW PROCESSLIST; -- 当前连接进程
安全注意事项
- 避免root远程登录:生产环境禁用
root@%
账户 - 最小权限原则:应用账户只授予必要权限
- 密码安全:
ALTER USER 'user'@'host' IDENTIFIED BY '新密码'; -- 定期更新
- 退出命令行:执行
EXIT;
或q
故障排查
- 连接失败:检查服务状态、防火墙、用户主机权限(表示允许远程)
- 命令错误:确认SQL以结束,关键词拼写正确
- 权限拒绝:用
SHOW GRANTS
验证账户权限
引用说明:本文操作基于MySQL 8.0官方文档,参考来源:
- MySQL 8.0 Reference Manual
- 数据库安全规范OWASP Cheat Sheet Series
- 运维最佳实践《High Performance MySQL》
通过命令行操作MySQL是数据库管理的核心技能,建议结合官方文档反复练习,遇到问题可使用HELP 命令关键词;
获取内置帮助(如 HELP SELECT;
)。
原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/34697.html