Linux下MySQL常用命令及权限管理详解
需积分: 9 190 浏览量
更新于2024-09-15
收藏 8KB TXT 举报
本篇文章主要介绍了Linux环境下MySQL数据库的一些关键命令,对于熟悉和管理MySQL服务器的用户来说非常实用。以下是对文章中提到的知识点进行详细解读:
1. **启动与停止MySQL服务**:
- `mysqladmin start` 和 `/etc/init.d/mysqlstart`(如果使用旧版本的启动脚本)是用于在Linux上启动MySQL服务器的命令。前者通常适用于较新的系统,而后者适用于早期版本的启动管理工具。
- 对于重启服务,可以使用 `mysqladmin restart` 或 `/etc/init.d/mysqlrestart`。
- `mysqladmin shutdown` 或 `/etc/init.d/mysqlshutdown` 可以用来安全地关闭MySQL服务。
2. **登录MySQL服务器**:
- 使用`mysql \bin\mysql -u root -p`命令登录到MySQL服务器,其中`root`是用户名,需要输入密码以完成登录。
- 若要更改root用户的密码,可以使用`mysqladmin -u root -p`命令,然后执行`SET PASSWORD FOR root = PASSWORD("新密码")`。
3. **权限管理**:
- MySQL的GRANT语句用于分配权限,如`grant select on *.* to '用户'@'主机' identified by '密码';`。这里展示了如何为特定用户赋予对所有表的查询权限,以及设置密码。
4. **数据库和表的操作**:
- `show databases;` 显示当前服务器上的所有数据库。
- `use mysql;` 切换到名为`mysql`的数据库。
- `show tables;` 显示数据库中的所有表。
- `describe table_name;` 查看表的结构信息。
- `create database;` 创建新的数据库。
- `create table;` 创建新表,包括字段定义。
- 数据库和表的删除操作,如`drop database; droptable;`。
- `delete from;` 删除表中的记录。
- `select * from;` 查询数据。
5. **数据导入导出**:
- `mysqldump`命令用于备份数据库,如`mysqldump --opt news > news.sql`将`news`数据库导出到`news.sql`文件中。
- 数据导入时,可以通过`LOAD DATA LOCAL INFILE`命令将本地文件中的数据直接加载到表中。
6. **字符集设置**:
- 当启动MySQL服务器时,可以指定默认字符集,例如`--default-character-set=gbk`。
- 如果需要修改数据库的字符集,可以使用`ALTER DATABASE db_name DEFAULT CHARACTER SET gbk;`。
7. **数据库维护和管理**:
- `show grants for current_user;` 显示当前用户的权限。
- 定义数据类型时要注意列的约束,比如NULL值的处理。
8. **备份和恢复**:
- 定期备份数据库是关键,通过`mysqldump`可以创建完整或增量备份。
9. **安全性**:
- 强烈建议使用安全的方法管理权限,仅授予必要的操作,避免过度授权。
这篇文章提供了Linux环境下管理MySQL数据库的一系列基础命令和操作,有助于管理员更好地控制和维护数据库。熟练掌握这些命令可以显著提高数据库管理的效率。
2018-12-19 上传
2011-12-09 上传
2010-11-28 上传
Mszhang1989
- 粉丝: 1
- 资源: 9
最新资源
- -ImportExcelOnec
- learning-web-technologies-spring-2020-2021-sec-h
- msgpack-rpc-jersey-blank:使用Jetty + Jersey + Jackson + MessagePack的现代Java RPC堆栈
- QQ自动点赞源码-易语言
- Simu5G:Simu5G-用于OMNeT ++和INET的5G NR和LTELTE-A用户平面仿真模型
- rust_template::crab:Rust项目模板。 只需运行init.py
- mvuehr:微人事前端
- SRC:HAB沙箱
- babylon:Web应用程序允许语言变量的国际化
- grunt-less-branding:根据品牌处理 LESS 文件
- neo_spacecargo:示例双向遍历扩展
- Frotend_Facturacion
- jsonotron:一个用于管理基于JSON模式的类型系统的库
- angular-task-1:Angular第一项任务:库存管理应用
- sclc:狮子座的约会约会系统
- NUCLEO-H745 CUBEIDE tcp通讯