MySQL安全值守常用语句

发布于:2024-07-11 ⋅ 阅读:(25) ⋅ 点赞:(0)

一、用户权限设置

1、Mysql中用户是如何定义的

用户名@主机域

  • 10.0.0.51
  • 10.0.0.%
  • %
  • 10.0.0.0/255.255.255.0
  • Db01
  • Localhost
  • 127.0.0.1

2、用户创建

  • create user xinjing@'%' identified by '123'

3、用户删除

  • drop user username;
  • username 是要删除的用户名:
  • 如 drop user root@'%’
  • drop use''@'127.0.0.1’用户名为空的删除

4、用户查询

use mysal

select user,host from user;

5、权限级别介绍

  • 全局--可以管理整个MySOL
  • 库--可以管理指定的数据库
  • 表--可以营理指定数据库的指定表
  • 字段--可以管理指定数据库的指定表的指定字段
  • 权限存储在mysql库的user, db,tables priv,columns_priv,procs_priv
  • 这几个系统表中,待MySOL实例启动后就加载到内存中

6、查看用户权限赋予情况

  • show grants for xinjing@'%'

7、用户授权

  • grant all privileges on stu.* to 'xinjing'@'%' identified by'123' withoption;
  • revoke all privileges on stu.* from 'xinjing'@'%'

二、元数据查询

  • Select version();服务器版本信息
  • Select database();当前数据库名
  • Select user();当前用户名
  • Show status;服务器状态
  • Show variables;服务器配置变量
  • Show global variables like'%datadir%:看数据文件存放位置
  • show global variables like '%datadir%':
  • select @@datadir;查询数据库的路径
  • select @@basedir 查询mysql的安装路径

三、union查询详解

  • union查询就是把2条或者多条sql语句的查询结果,合并成一个结果集。
  • sql1:N行,sql2:M行,sqll union sql2 --->N+M行
  • 要求结果集中的列数一致就可以.(如都是2列或者N列)
  • union取出的最终列名,以第1条sql为准
  • union查询默认会去重,如果不想去重就用union all

四、分组查询展示

GROUP_CONCAT()

  • select sid,group_concat(cid),group_concat(cj order by cj desc SEPARATOR ' ') from score

        group by sid

五、字符串函数

六、mysql数据库导入导出(在mysql外部)

  • mysqldump导出

--dump出表utemp1

mysqldump -uroot -p student utemp1>utemp1.sql

--dump出库student

mysqldump -uroot -p student>student.sql

--dump所有的数据库及数据库表

mysqldump -uroot -p --all -databases>mysqldatabases.sql;

  • mysql的数据库导入"<"

--新建一个数据库

create database dumpdemo1

--回到mysql接口

mysql -u root -p654321 dumpdemo1<student.sql

--进入mysql验证

use dumpdemo1

show tables;

七、mysql数据库导入导出(在mysql内部)

  • mysql的数据库导入"source"

mysal -u root -pcreate database source dumpdemo;

source /var/lib/mysal-files/student.sql