MySQL数据库管理员(DBA)

文章目录

数据库管理员 (DBA)

新建用户

sql 复制代码
创建本地用户
create user '用户名'@'localhost' identified by '密码'

创建外网用户
create user '用户名'@'%' identified by '密码';

默认没有任何权限


使用 root 用户查看系统中当前用户有哪些

sql 复制代码
select user, host from mysql.user


给用户授权

sql 复制代码
授权语法
GRANT 权限,权限2... on 库名.表名 to '用户名'@'主机名/ip地址'

给本地用户授权
grant 权限1,权限2... on 库名.表名 to '用户名'@'localhost'/127.0.0.1;

给外网用户授权
grant [权限1,权限2...] on 库名.表名 to '用户名'@'外网ip';
外网ip如果是%: 这个用户可以从任何地方连接到数据库服务器

权限:
所有权限:all privileges

单个权限:select、insert、delete、update、alter、create、drop、index(索引)、usage(登录权限)......

库名可以使用 * ,它代表所有数据库
表名可以采用 * ,它代表所有表
也可以提供具体的数据库和表,例如:powernode.emp (powernode数据库的emp表)

授权后必须刷新权限,才能生效:flush privileges


查看某个用户有哪些权限

sql 复制代码
show grants for '用户名'@'主机名/ip地址'

最后带上 with grant option的作用是:这个用户也可以把自己有的权限授权给别的用户


撤销用户权限

sql 复制代码
revoke 权限 on 数据库名.表名 from '用户'@'ip地址'

撤销权限后也需要刷新权限:flush privileges

注意:撤销权限时 "数据库名.表名" 不能随便写,要求和授权语句时的 "数据库名.表名" 一致。



修改用户的密码

SQL 复制代码
alter user '用户名'@'主机名/ip地址' identified by '新密码';

修改密码后,也需要刷新权限才能生效:flush privileges
以上是MySQL8版本以后修改用户密码的方式。



修改用户名

sql 复制代码
rename user '原始用户名'@'主机名/ip地址' to '新用户名'@'主机名/ip地址'

需要 flush privileges



删除用户

sql 复制代码
drop user '用户名'@'主机名/ip地址'

==需要 flush privileges



数据备份

导出数据(在登录mysql数据库之前进行)

sql 复制代码
mysqldump 库名 [表名] > 地址 -u用户 -p密码 --default-character-set = 字符集
每表名就是导出整个库的数据


例如:
# 导出powernode中emp表的数据
mysqldump powernode emp > e:/powernode.sql -uroot -p1234 --default-character-set=utf8

导入数据第一种方式(在登录mysql数据库之前进行)

sql 复制代码
就是
mysqldump 库名 [表名] < 地址 -u用户 -p密码 --default-character-set = 字符集
#没表名就是导入整个库的数据

例如:
# 现在登录mysql状态下新建一个数据库
create database powernode;
# 在登录mysql之前执行以下命令
mysql powernode < e:/powernode.sql -uroot -p1234 --default-character-set=utf8

导入第二种方式(在登录mysql数据库之前进行)

sql 复制代码
create  database 库;
use 库;
source sql文件地址【或者直接拖进来】
相关推荐
STDD1 分钟前
Abiotic Factor多人生存建筑游戏《非生物因素》 专用服务器搭建教程
服务器·数据库·游戏
Dicky-_-zhang1 分钟前
Elasticsearch聚合查询优化实战
java·jvm
心中有国也有家4 分钟前
catlass 算子模板库中的 FlashAttention 高性能实现
笔记·算法
淼淼爱喝水5 分钟前
【Ansible 入门实战】三种变量详解
java·linux·数据库·ansible·playbook
Perry 1236 分钟前
Java中的多态
java·开发语言
云草桑10 分钟前
Odoo企业商用到底是不是免费的?
数据库·odoo·erp
asdfg125896313 分钟前
一文理解软件开发中的“设计模式”
java·设计模式·软件开发
CryptoPP16 分钟前
快速集成:基于现代API的金融数据流解决方案
大数据·数据结构·笔记·金融·区块链
hikktn18 分钟前
企业级Spring Boot应用管理:从零打造生产级启动脚本
java·spring boot·后端
砍材农夫20 分钟前
物联网 基于netty构建mqtt协议规范(三种 QoS 等级)
java·开发语言·物联网