MySQL数据库管理(启动关闭服务器 查看状态设置 登录创建新用户 分配权限刷新更改生效 删除修改密码 /etc/my.cnf 文件配置管理 命令创建删除表数据导入导出索引 授予撤销 慢查询日志)

avatar
作者
筋斗云
阅读量:1

👍MySQL数据库管理(启动关闭服务器 查看状态设置 登录创建新用户 分配权限刷新更改生效 删除修改密码 /etc/my.cnf 文件配置管理 命令创建删除表数据导入导出索引 授予撤销 慢查询日志)

👍MySQL数据库管理(启动关闭服务器 查看状态设置 登录创建新用户 分配权限刷新更改生效 删除修改密码 /etc/my.cnf 文件配置管理 命令创建删除表数据导入导出索引 授予撤销 慢查询日志)

MySQL管理

启动及关闭 MySQL 服务器

MySQL 服务器的启动和关闭通常依赖于你的操作系统。对于大多数 Linux 发行版,你可以使用以下命令:

启动 MySQL 服务

sudo service mysql start 

或者

sudo systemctl start mysqld 

关闭 MySQL 服务

sudo service mysql stop 

或者

sudo systemctl stop mysqld 

查看 MySQL 服务状态

sudo service mysql status 

或者

sudo systemctl status mysqld 

MySQL 用户设置

在 MySQL 中,你可以创建、修改或删除用户,并为他们分配权限。通常,这可以通过命令行客户端 mysql 来完成。

登录 MySQL

mysql -u root -p 

然后输入你的 root 用户密码。

创建新用户

CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password'; 

给用户分配权限

GRANT ALL PRIVILEGES ON database_name.* TO 'newuser'@'localhost'; 

刷新权限,使更改生效

FLUSH PRIVILEGES; 

删除用户

DROP USER 'newuser'@'localhost'; 

修改用户密码

SET PASSWORD FOR 'newuser'@'localhost' = PASSWORD('newpassword'); 

或者从 MySQL 5.7.6 开始,你也可以使用:

ALTER USER 'newuser'@'localhost' IDENTIFIED BY 'newpassword'; 

/etc/my.cnf 文件配置

/etc/my.cnf 是 MySQL 的主要配置文件,你可以在其中调整各种服务器设置,例如内存分配、日志文件位置、字符集等。

修改 /etc/my.cnf 文件示例:

打开文件并编辑:

sudo nano /etc/my.cnf 

找到 [mysqld] 部分,并修改或添加配置项,例如:

[mysqld] max_connections = 100 innodb_buffer_pool_size = 128M character-set-server = utf8mb4 collation-server = utf8mb4_general_ci log-error = /var/log/mysql/error.log pid-file = /var/run/mysqld/mysqld.pid 

修改后,重启 MySQL 服务以应用更改。

MySQL管理——《跟老吕学MYSQL》

管理MySQL的命令

MySQL 提供了大量的命令行工具来管理数据库和服务器。下面是一些常用的命令:

显示所有数据库

要列出MySQL服务器上所有的数据库,可以使用SHOW DATABASES;命令。这个命令在MySQL命令行工具中执行,将返回一个包含所有数据库名称的列表。

SHOW DATABASES; 

选择数据库

在列出所有数据库之后,您可能需要选择一个特定的数据库进行操作。这可以通过USE命令来实现,后面跟上您想要选择的数据库名称。

USE database_name; 

database_name替换为您想要选择的数据库的实际名称。

显示数据库中的表

一旦您选择了一个数据库,您可能想要查看该数据库中包含的所有表。这可以通过SHOW TABLES;命令来实现。

SHOW TABLES; 

这将返回一个包含所选数据库中所有表名称的列表。

创建数据库

如果您需要创建一个新的数据库,可以使用CREATE DATABASE命令,后面跟上您想要创建的数据库的名称。

CREATE DATABASE new_database; 

new_database替换为您想要创建的数据库的实际名称。

删除数据库

如果您需要删除一个数据库及其所有内容,可以使用DROP DATABASE命令,后面跟上您想要删除的数据库的名称。请注意,这将永久删除数据库及其所有内容,因此请务必谨慎使用。

DROP DATABASE database_to_delete; 

database_to_delete替换为您想要删除的数据库的实际名称。

创建表

在数据库中创建表需要定义表的结构和字段。这可以通过CREATE TABLE命令来实现,后面跟上表的名称和字段定义。

CREATE TABLE table_name (     column1 datatype,     column2 datatype,     column3 datatype,     .... ); 

table_name替换为您想要创建的表的名称,并根据需要定义字段和数据类型。

删除表

如果您需要删除一个表及其所有数据,可以使用DROP TABLE命令,后面跟上您想要删除的表的名称。与删除数据库一样,这也将永久删除表及其所有数据,请谨慎使用。

DROP TABLE table_to_delete; 

table_to_delete替换为您想要删除的表的实际名称。

这些只是MySQL提供的一些基本命令行工具示例。实际上,MySQL还提供了许多其他功能和命令,用于执行更复杂的数据库管理任务,如数据导入导出、备份恢复、性能优化等。要深入了解MySQL的命令行工具和功能,请查阅MySQL官方文档或相关教程。

数据导入与导出

MySQL 提供了多种方式来导入和导出数据,这对于备份、迁移或分析数据非常有用。

数据导出

使用 mysqldump 工具可以导出数据库或表的结构和数据到一个 SQL 文件中。例如,导出整个数据库:

mysqldump -u username -p database_name > backup.sql 

这将会提示您输入用户 username 的密码,然后将 database_name 的所有内容导出到 backup.sql 文件中。

如果只导出某个表的数据,可以这样做:

mysqldump -u username -p database_name table_name > table_backup.sql 
数据导入

使用 mysql 命令行工具可以导入 SQL 文件中的数据到数据库中。例如:

mysql -u username -p database_name < backup.sql 

同样,这将会提示您输入用户 username 的密码,然后将 backup.sql 文件中的数据导入到 database_name 数据库中。

用户权限管理

在 MySQL 中,用户权限的管理是非常重要的,以确保数据的安全性和完整性。

创建用户

使用 CREATE USER 语句可以创建新的用户账号。

CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password'; 

这将创建一个名为 newuser 的新用户,密码为 password,并且只能从 localhost 连接。

授予权限

通过 GRANT 语句可以为用户授予权限。

GRANT ALL PRIVILEGES ON database_name.* TO 'newuser'@'localhost'; FLUSH PRIVILEGES; 

上述命令将授予 newuserdatabase_name 数据库的所有权限,并刷新权限使其立即生效。

撤销权限

使用 REVOKE 语句可以撤销用户的权限。

REVOKE ALL PRIVILEGES ON database_name.* FROM 'newuser'@'localhost'; FLUSH PRIVILEGES; 

这将撤销 newuserdatabase_name 数据库的所有权限。

性能优化与监控

MySQL 提供了多种工具和命令来帮助您监控和优化数据库性能。

慢查询日志

启用慢查询日志可以记录执行时间超过指定阈值的查询,帮助您识别和优化性能瓶颈。

SET GLOBAL slow_query_log = 'ON'; SET GLOBAL long_query_time = 2;  -- 设置慢查询时间阈值为2秒 
索引优化

合理的索引设计可以显著提高查询性能。使用 EXPLAIN 语句可以分析查询的执行计划,帮助您确定是否需要添加或优化索引。

EXPLAIN SELECT * FROM table_name WHERE column_name = 'value'; 

这只是一个简单的示例,实际上 MySQL 的功能远不止这些。为了充分利用 MySQL 的强大功能,建议您深入学习其官方文档和相关的最佳实践。此外,定期备份您的数据库、监控其性能以及保持软件更新也是确保数据库安全和高效运行的关键步骤。




👨‍💻博主Python老吕说:如果您觉得本文有帮助,辛苦您🙏帮忙点赞、收藏、评论,您的举手之劳将对我提供了无限的写作动力!🤞


🔥精品付费专栏:《跟老吕学Python编程》《Python游戏开发实战讲解》《Python Web开发实战》《Python网络爬虫实战》《Python APP开发实战》


🌐前端:《HTML》《CSS》《JavaScript》《Vue》


💻后端:《C语言》《C++语言》《Java语言》《R语言》《Ruby语言》《PHP语言》《Go语言》《C#语言》《Swift语言》《跟老吕学Python编程·附录资料》


💾数据库:《Oracle》《MYSQL》《SQL》《PostgreSQL》《MongoDB》


广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!