当前位置: 首页 > news >正文

Linux服务器管理MySQL数据库的常见命

Linux 服务器上管理 MySQL 数据库,需要掌握一系列常用命令,以便高效完成数据库的安装、配置、管理和维护工作。以下是 MySQL 数据库管理的常见命令及其使用方法。


1. MySQL 服务管理

1.1 启动、停止、重启 MySQL 服务

管理 MySQL 服务的基本操作:

bash

复制

# 启动 MySQL 服务
sudo systemctl start mysql# 停止 MySQL 服务
sudo systemctl stop mysql# 重启 MySQL 服务
sudo systemctl restart mysql# 查看 MySQL 服务状态
sudo systemctl status mysql

2. 登录和退出 MySQL

2.1 登录 MySQL

登录到 MySQL 数据库,需提供用户名和密码:

bash

复制

# 使用 root 用户登录
mysql -u root -p
  • 系统会提示输入 root 用户的密码。

2.2 退出 MySQL

从 MySQL Shell 中退出:

sql

复制

exit;

sql

复制

quit;

3. 数据库管理

3.1 查看所有数据库

显示当前服务器上的所有数据库:

sql

复制

SHOW DATABASES;

3.2 创建数据库

创建一个新的数据库:

sql

复制

CREATE DATABASE 数据库名;

3.3 删除数据库

删除一个数据库(需谨慎操作):

sql

复制

DROP DATABASE 数据库名;

3.4 使用某个数据库

切换到指定的数据库:

sql

复制

USE 数据库名;

4. 数据表管理

4.1 查看数据库中的所有表

列出当前数据库中的所有表:

sql

复制

SHOW TABLES;

4.2 创建表

创建一个名为 users 的表:

sql

复制

CREATE TABLE users (id INT AUTO_INCREMENT PRIMARY KEY,name VARCHAR(100) NOT NULL,email VARCHAR(100) NOT NULL UNIQUE,created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

4.3 查看表结构

查看表的字段定义和结构:

sql

复制

DESCRIBE 表名;

sql

复制

SHOW COLUMNS FROM 表名;

4.4 删除表

删除一个表(会丢失所有数据):

sql

复制

DROP TABLE 表名;

5. 数据管理

5.1 插入数据

向表中插入一行数据:

sql

复制

INSERT INTO 表名 (字段1, 字段2, 字段3)
VALUES ('值1', '值2', '值3');

5.2 查询数据

从表中查询数据:

sql

复制

SELECT * FROM 表名;

带条件查询:

sql

复制

SELECT * FROM 表名 WHERE 字段1 = '某值';

5.3 更新数据

更新表中的数据:

sql

复制

UPDATE 表名
SET 字段1 = '新值'
WHERE 字段2 = '条件值';

5.4 删除数据

删除表中的数据:

sql

复制

DELETE FROM 表名 WHERE 字段1 = '某值';

6. 用户管理

6.1 创建用户

创建一个新用户并设置密码:

sql

复制

CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';
  • 主机名
    • 'localhost':仅允许本地访问。
    • '%':允许任意主机访问。

6.2 查看用户权限

显示用户的权限信息:

sql

复制

SHOW GRANTS FOR '用户名'@'主机名';

6.3 授予权限

授予用户对某数据库的访问权限:

sql

复制

GRANT 权限 ON 数据库名.* TO '用户名'@'主机名';

常见权限:

  • ALL PRIVILEGES:所有权限。
  • SELECT:查询权限。
  • INSERT:插入权限。
  • UPDATE:更新权限。
  • DELETE:删除权限。

刷新权限:

sql

复制

FLUSH PRIVILEGES;

6.4 撤销权限

撤销用户权限:

sql

复制

REVOKE 权限 ON 数据库名.* FROM '用户名'@'主机名';

6.5 删除用户

删除用户:

sql

复制

DROP USER '用户名'@'主机名';

7. 数据备份与恢复

7.1 数据库备份

使用 mysqldump 备份数据库:

bash

复制

# 备份单个数据库
mysqldump -u root -p 数据库名 > 数据库名.sql# 备份所有数据库
mysqldump -u root -p --all-databases > all_databases.sql

7.2 数据库恢复

从备份文件恢复数据库:

bash

复制

# 恢复到指定数据库
mysql -u root -p 数据库名 < 数据库名.sql# 恢复所有数据库
mysql -u root -p < all_databases.sql

8. 配置与优化

8.1 修改 MySQL 配置文件

MySQL 的主要配置文件路径:

bash

复制

/etc/mysql/my.cnf

常见配置:

  • 最大连接数

    ini

    复制

    max_connections = 500
    
  • 查询缓存

    ini

    复制

    query_cache_size = 64M
    query_cache_type = 1
    

8.2 重载配置

修改配置文件后,需重启 MySQL 服务:

bash

复制

sudo systemctl restart mysql

9. 性能监控与优化

9.1 查看运行状态

使用 SHOW STATUS 查看服务器状态:

sql

复制

SHOW STATUS;

9.2 查看当前连接

查看当前活动连接:

sql

复制

SHOW PROCESSLIST;

9.3 优化表

优化表以释放未使用的空间并提高性能:

sql

复制

OPTIMIZE TABLE 表名;

10. 常用工具

10.1 MySQL 命令行管理工具

  • MySQL CLI:默认的命令行工具。
  • MySQL Workbench:图形化管理工具,支持 SQL 查询、数据库建模等。

10.2 性能分析工具

  • Percona Toolkit:用于查询性能分析和数据库优化。
  • MySQLTuner:快速分析 MySQL 配置和性能的脚本。

总结

通过掌握以上常见命令,您可以轻松完成 MySQL 数据库的日常管理任务,包括数据库和用户管理、数据操作、备份与恢复、性能优化等。对于实际生产环境,建议定期备份数据库并优化配置,以保证系统的稳定性和高效运行。

http://www.lryc.cn/news/610033.html

相关文章:

  • 09 Linux基础(8.4)
  • git 项目拉取 SSH密钥配置
  • ESDocValues机制
  • CCES软件的Workspace设置问题
  • 牛客网之华为机试题:HJ24 合唱队(动态规划)
  • HFSS许可监控与分析
  • 向量空间模型
  • day23-线程篇(一)
  • 什么是内容管理系统?
  • 基于实时音视频技术的远程控制传输SDK的功能设计
  • mysql中使用LIMIT分页查询数据出现深分页的原因
  • 【音视频】WebRTC 一对一通话-实现概述
  • SpringMVC在前后端分离架构中的执行流程详解
  • AI绘画-Stable Diffusion-WebUI的ControlNet用法
  • STM32F103C8T6 BC20模块NBIOT GPS北斗模块采集温湿度和经纬度发送到EMQX
  • 攻防世界-easyphp-lever1
  • k8s常见问题
  • 【ECCV2024】AdaCLIP:基于混合可学习提示适配 CLIP 的零样本异常检测
  • Design Compiler:高层次优化与数据通路优化
  • 【Spring Boot 快速入门】六、配置文件
  • Java 发送 HTTP POST请求教程
  • Scikit-learn - 机器学习库初步了解
  • MoonBit Pearls Vol.04:用MoonBit 探索协同式编程
  • Spring IoC容器与Bean管理
  • GPTs——定制的小型智能体
  • 白杨SEO:百度搜索开放平台发布AI计划是什么?MCP网站红利来了?顺带说说其它
  • [Oracle] || 连接运算符
  • 关于如何自定义vscode(wsl连接linux)终端路径文件夹文件名字颜色的步骤:
  • 【PHP】获取图片的主要颜色值RGB值
  • 【Django】-3- 处理HTTP响应