编程之路之数据库mysql(九)- mysql用户权限设置与数据批量导入导出详解

一、mysql用户权限管理

MYSQL它的权限管理是很细的,可以严格到库、表、字段。

权限的划分也是很细的,如select insert update delete等等

1、创建用户

格式:create user 用户名[@主机地址] identified by '密码';

2、查看用户

可以使用sql从mysql库中的user表中查看

3、查看用户权限

格式:show grants for 用户

观察到

用户是允许从任何主机上连接数据库。@’%’

用户是在*.*所有库的所有表上有一个usage权限

4、给用户分配权限,grant

格式:grant 权限列表 [(数据表字段列表)] on 库名.表名|*.*|库名.*  to  用户 [identified by ‘密码’]  [with grant option]

注:后面可选的identified部分意思是,可以不使用create user直接使用grant创建并同时给用户分配权限

查看权限

注:用户的权限可以使用grant多次进行分配

 

再举一个例子,为一个新用户分配权限

查看用户权限,发现此用户要绑定一个主机地址一起来查看

 

我们现在讲解分配权限的权限问题

使用with grant option可以让用户具有分配权限的能力

查看feilue权限

feilue用户因为有分配权限的能力,可以把自己拥有的权限再分配给别人

通常做一个项目,是使用一个数据库

Grant all on shop.* to shop@’192.168.18.%’ identified by ‘111111’;

5、修改密码

格式1:set password=password(‘密码’)                      修改或设置自己的密码

格式2:set password for 用户=password(‘密码’)   修改或设置别人的密码

6、收回权限,revoke

格式:revoke 权限列表 on *.*|库名.表名|库名.* from 用户

再查看权限

权限也可以一点一点的收

7、删除用户,drop

格式:drop user 用户名

 

8、权限的划分和保存方式

MYSQL中,权限分为

全局:mysql.user

库:mysql.db

表:mysql.table_priv

字段:mysql.columns_priv

程序:mysql.procs_priv

二、数据的导入导出

可以分为两种方式

1、使用mysql的命令行工具

特点:导出的数据格式是sql格式

备注:此时使用的是命令行工具,不是进入MYSQL客户端

2、导出,mysqldump

格式1:mysqldump -A -uroot -p > alldb.sql

这是导出的有的数据库数据

格式2:mysqldump -B -uroot -p db1 db2 db3 > f:/partdb.sql

根据要求导出需要的数据库数据

格式3:mysqldump -uroot -p 库名 表1 表2 表3 > f:/库名.sql

可以导出某个库指定的数据表

3、导入,mysql

格式:

mysql -uroot -p  < 数据文件1.sql

mysql -uroot -p 库名 < 数据文件2.sql

第一种:sql文件中含有create database的语句

第二种:sql文件中不含有create database,只含有create table语句

4、使用SQL语句进行导入导出

导出的数据格式是没有数据表结构,只有数据的情况。

导出

导出:select * into outfile  'f:/member.txt'  from member;

 

增加三个参数:字段分隔符,字段数据包裹符号,换行符

导入

格式:load data infile 'f:/member.txt' into table member2;

我是小咖

发个邀请:
如果你正好想学习php,可以与我一起交流,我的VX:feilueze333。下面资料免费赠送。

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: MySQL数据迁移是将数据库数据从一个服务器迁移到另一个服务器,其中一种方法是通过替换data目录来实现。以下是关于data目录直接替换的注意事项的详解: 1. 备份原始的data目录:在进行任何替换之前,务必备份MySQL的原始data目录。这是非常重要的,因为如果出现意外情况,例如数据丢失或错误,可以通过还原备份来恢复系统。 2. 确保版本兼容性:在进行data目录替换之前,必须确保目标服务器上的MySQL版本与源服务器上的MySQL版本兼容。如果版本不兼容,可能会导致数据不兼容或无法读取的问题。 3. 停止MySQL服务:在替换data目录之前,必须停止MySQL服务。这可以通过运行适当的命令或使用服务管理工具来完成。确保所有与MySQL相关的进程都已停止。 4. 替换data目录:将已备份的data目录替换为目标服务器上的data目录。确保替换的目录结构和文件名与原始目录完全一致。不要删除或重命名原始data目录,以防需要还原。 5. 更改文件权限和所有者:在替换data目录后,可能需要更改文件的权限和所有者以确保MySQL可以正常读取和写入数据。根据操作系统的不同,可以使用chmod和chown命令来更改文件权限和所有者。 6. 启动MySQL服务:完成文件替换和权限更改后,可以启动MySQL服务。确保服务启动时没有任何错误或警告。可以查看MySQL的日志文件来检查是否有任何问题。 7. 测试数据可读性和一致性:在迁移完成后,务必进行一些基本的数据测试,以确保目标服务器上的MySQL可以正常读取和写入数据,且数据与源服务器上的一致。 总之,data目录直接替换是一种快速迁移MySQL数据的方法,但在进行替换之前,务必备份原始数据、确保版本兼容性、停止MySQL服务、替换data目录、更改文件权限和所有者、启动MySQL服务,并测试数据可读性和一致性,以确保迁移过程的顺利和数据的完整性。 ### 回答2: MySQL数据迁移中,直接替换data目录是一种常见的迁移方法。但是在进行这种迁移时需要注意以下几点。 首先,备份数据是非常重要的。在进行data目录的替换之前,务必要进行完整的数据备份。这个备份可以是物理备份,也可以是逻辑备份。物理备份是把整个data目录进行复制,适用于不同版本MySQL之间的迁移。逻辑备份则是使用导出工具如mysqldump导出数据库的结构和数据,适用于同一版本MySQL之间的迁移。备份数据可以避免数据丢失的风险,同时也可以用来恢复数据。 其次,确保源数据库和目标数据库版本兼容。如果源数据库和目标数据库的版本不一致,可能会导致数据迁移失败。在进行data目录替换之前,需要确认源数据库和目标数据库的版本兼容性,并做好相应的兼容性处理。如果版本不兼容,可能需要先升级或降级数据库版本,再进行迁移。 另外,需要关闭源数据库和目标数据库的服务。在替换data目录之前,需要停止源数据库和目标数据库的服务,以避免数据冲突和文件锁定的问题。可以通过命令行或者图形界面来停止数据库服务,等替换完data目录后再启动数据库服务。 最后,需要进行测试和验证。在完成data目录替换后,需要对目标数据库进行测试和验证,确保数据迁移成功。可以通过连接数据库,查看表结构和数据是否正确,运行一些查询语句来验证数据的完整性和正确性。如果发现问题,及时进行修复和调整。 综上所述,直接替换data目录是一种高效的MySQL数据迁移方法,但在实施过程中需要注意进行数据备份,确认版本兼容性,关闭数据库服务以及进行测试和验证。这些注意事项可以确保数据迁移的顺利进行,并避免数据丢失和错误。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值