MySQL数据库-------索引(Index)、权限管理和备份

本文介绍了MySQL中的索引类型,如主键、唯一索引和全文索引,强调了合理创建索引的重要性,并提出了索引创建的原则。同时,讲解了数据库权限管理,包括创建用户、授权和撤销权限的操作。最后,详细阐述了MySQL的备份方法,包括全备、部分备份以及如何导入备份文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

索引(Index)

  • 索引是帮助MySQL高效获取数据的数据结构,索引在小数据量的时候,作用不大,但是在大数据的时候作用非常明显

索引的分类

  • 在一个表中,主键索引只能有一个,唯一索引可以有多个
  • 主键索引(primary key):唯一的标识,主键不可重复,只能有一个列作为主键
  • 唯一索引(unique key):避免重复的列出现,唯一索引可以重复,多个列都可以标识唯一索引
  • 常规索引(key/index):默认的,index,key关键字来设置
  • 全文索引(FullText):在特定的数据库引擎下才有,可以快速定位数据

索引原则

  • 索引不是越多越好
  • 不要对进程变动数据加索引
  • 小数据量的表不需要索引
  • 索引一般加在常用来查询的字段上

权限管理和备份

权限管理(grant)

  • 本质读表进行增删改查操作
--创建用户:create user 用户名identified by '密码'
create user yangguang identified by '123456'

--修改密码(修改当前用户密码)
set password =password('123456')
--修改密码(修改指定用户密码)
set password for yangguang=password('123456')

--重命名:rename user 原名字 to 新名字
rename user yangguang to yangguang1

--用户授权 ALL Privileges:全部的权限 库.表
--ALL privileges除了不能给别人授权,其他的权限都有
grant all privileges on *.* to yangguang1

--查询权限
show grant for yangguang1 --查看指定用户的权限

--撤销权限 revoke 权限
revoke all privileges on *.* from yangguang1

--删除用户
drop user yangguang1

MySQL备份

  • MySQL数据库备份的方式

    • 直接拷贝物理文件
    • 在Sqlyog等可视化工具中手动导出
    • 命令行导出 mysqldump
    --导出单表
    --mysqldump -h 主机 -u 用户名 -p 密码 数据库 表名 > 物理磁盘位置/文件名
    mysqldump -hlocalhost -uroot -p123456 school student >D:/b.sql
    
    --导出多表
    --mysqldump -h 主机 -u 用户名 -p 密码 数据库 表1 表2 表3 > 物理磁盘位置/文件名
    mysqldump -hlocalhost -uroot -p123456 school student1 student2 student3 >D:/b.sql
    
    --导出数据库
    --mysqldump -h 主机 -u 用户名 -p 密码 数据库>物理磁盘位置/文件名
    mysqldump -hlocalhost -uroot -p123456 school >D:/c.sql
    
    --导入
    --登录的情况下,切换到指定的数据库
    --source 备份文件
    source d:/a.sql
    
    --未登录
    mysql -u用户名 -p密码 库名<备份文件
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值