文章来源:https://macrozheng.github.io/mall-learning/#/reference/mysql

开发者必备Mysql命令

开发者必备Mysql常用命令,涵盖了数据定义语句、数据操纵语句及数据控制语句,基于Mysql5.7。

数据定义语句(DDL)

数据库操作

  • 登录数据库:

     mysql -uroot -proot 
  • 创建数据库:
     create database test 
  • 查看所有数据库:
     show databases 

  • 选择数据库并使用:
    use test
  • 查看所有数据表:
    show tables
  • 删除数据库:
    drop database test

表操作

  • 创建表:

    create table emp(ename varchar(10),hiredate date,sal decimal(10,2),deptno int(2))  
    create table dept(deptno int(2),deptname varchar(10))

  • 查看表的定义:
    desc emp

  • 查看表定义(详细):
    show create table emp \G

  • 删除表:
    drop table emp
  • 修改表字段:
    alter table emp modify ename varchar(20)
  • 添加表字段:
    alter table emp add column age int(3)
  • 删除表字段:
    alter table emp drop column age
  • 字段改名;
    alter table emp change age age1 int(4)
  • 修改表名:
    alter table emp rename emp1

数据操纵语句(DML)

插入记录

  • 指定名称插入:

    insert into emp (ename,hiredate,sal,deptno) values ('zhangsan','2018-01-01','2000',1)
  • 不指定名称插入:
    insert into emp values ('lisi','2018-01-01','2000',1)
  • 批量插入数据:
    insert into dept values(1,'dept1'),(2,'dept2')

修改记录

update emp set sal='4000',deptno=2 where ename='zhangsan'

删除记录

delete from emp where ename='zhangsan'

查询记录

  • 查询所有记录:

    select * from emp
  • 查询不重复的记录:
    select distinct deptno from emp
  • 条件查询:
    select * from emp where deptno=1 and sal<3000
  • 排序和限制:
    select * from emp order by deptno desc limit 2
  • 分页查询(查询从第0条记录开始10条):
    select * from emp order by deptno desc limit 0,10
  • 聚合(查询部门人数大于1的部门编号):
    select deptno,count(1) from emp group by deptno having count(1) > 1
  • 连接查询:
    select * from emp e left join dept d on e.deptno=d.deptno
  • 子查询:
    select * from emp where deptno in (select deptno from dept)
  • 记录联合:
    select deptno from emp union select deptno from dept

数据控制语句(DCL)

权限相关

  • 授予操作权限(将test数据库中所有表的select和insert权限授予test用户):

    grant select,insert on test.* to 'test'@'localhost' identified by '123'
  • 查看账号权限:
    show grants for 'test'@'localhost'

  • 收回操作权限:
    revoke insert on test.* from 'test'@'localhost'

  • 授予所有数据库的所有权限:
    grant all privileges on *.* to 'test'@'localhost'
  • 授予所有数据库的所有权限(包括grant):
    grant all privileges on *.* to 'test'@'localhost' with grant option
  • 授予SUPER PROCESS FILE权限(系统权限不能指定数据库):
    grant super,process,file on *.* to 'test'@'localhost'
  • 只授予登录权限:
    grant usage on *.* to 'test'@'localhost'

帐号相关

  • 删除账号:

    drop user 'test'@'localhost'
  • 修改自己的密码:
    set password = password('123')
  • 管理员修改他人密码:
    set password for 'test'@'localhost' = password('123')

其他

字符集相关

  • 查看字符集:

    show variables like 'character%'

  • 创建数据库时指定字符集:
    create database test2 character set utf8

时区相关

  • 查看当前时区(UTC为世界统一时间,中国为UTC+8):

    show variables like "%time_zone%"

  • 修改mysql全局时区为北京时间,即我们所在的东8区:
    set global time_zone = '+8:00';
  • 修改当前会话时区:
    set time_zone = '+8:00'

  • 立即生效:
    flush privileges

必备Mysql命令的更多相关文章

  1. 测试必备技能系列1 :通过mysql命令进行脚本数据导入

    老徐,分享测试项目中实际能解决问题的干货!   今日分享: 如何通过mysql命令行,导入mysql脚本文件数据?   ----- 解决实际的问题: 工作过程中,经常需要导入mysql脚本文件 很多同 ...

  2. Mysql命令大全

    格式: mysql -h主机地址 -u用户名 -p用户密码 1.连接到本机上的MYSQL.首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root -p,回车后提示你输 ...

  3. ****Linux MySQL命令运用个人总结

    1.xampp在linux下如何使用mysql命令 A: 解决方法(推荐第二个方法): 1.xampp中的命令工具在/opt/lampp/bin/目录中,所以可以这样运行mysql命令 /opt/la ...

  4. MySQL命令行登录的例子

    环境:MySQL Sever 5.1 + MySQL命令行工具 问题:MySQL命令行登录 解决: 命令 行登录语法: mysql –u用户名 [–h主机名或者IP地址] –p密码 说明:用户名是你登 ...

  5. MySQL命令行下执行.sql脚本详解

    本文主要介绍一个在MySQL命令行下执行脚本文件的例子,通过这个例子让我们来了解一下在命令行下MySQL是怎样执行脚本的吧.现在我们开始介绍这一过程. 1.首先编写sql脚本,保存为的:book.sq ...

  6. Mysql 命令大全

    1.连接Mysql 格式: mysql -h主机地址 -u用户名 -p用户密码1.连接到本机上的MYSQL.首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root - ...

  7. mysql 在windows下,使用 net start mysql 命令发生错误 服务名无效 或 1067

    mysql 在windows下,使用 net start mysql 命令发生错误 :服务名无效 或 1067  先使用mysqld -install安装一下 删除data目录下的日志等文件(因为之前 ...

  8. MySQL命令大全:MySQL常用命令手册、MySQL命令行大全、查询工具

    1.连接Mysql 格式: mysql -h主机地址 -u用户名 -p用户密码 1.连接到本机上的MYSQL.首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root ...

  9. MYSQL命令行使用指南

    一.连接MYSQL. 格式: mysql -h主机地址 -u用户名 -p用户密码 1.例1:连接到本机上的MYSQL. 首先在打开DOS窗口,然后进入目录 mysqlbin,再键入命令mysql -u ...

随机推荐

  1. Nginx基于域名的虚拟主机

    一.基于域名的虚拟主机 修改配置文件/usr/local/nginx/conf/nginx.conf 创建新的虚拟主机的根目录和默认网页index.html 重新加载nginx的配置文件 查看两个虚拟 ...

  2. spring boot 过滤器、拦截器的区别与使用

    原文:https://blog.csdn.net/heweimingming/article/details/79993591 拦截器与过滤器的区别: 1.过滤器和拦截器触发时机不一样,过滤器是在请求 ...

  3. Alpha2的项目互评互测

    目录 @(Alpha2项目测试) 这个作业属于哪个课程 课程链接 这个作业要求在哪里 作业要求的链接 团队名称 你的代码我的发 这个作业的目标 其他参考文献 软件测试用例 姓名 学号 团队名称 李涵 ...

  4. 后台返回的Json为null的字段不显示的方法

    如果引入的是谷歌的gson的话,需要引入依赖: <dependency> <groupId>com.fasterxml.jackson.core</groupId> ...

  5. Spring源码窥探之:注解方式的AOP原理

    AOP入口代码分析 通过注解的方式来实现AOP1. @EnableAspectJAutoProxy通过@Import注解向容器中注入了AspectJAutoProxyRegistrar这个类,而它在容 ...

  6. 性能:Output层面

    将数据保存到MySQL中 import java.sql.DriverManager import org.apache.spark.storage.StorageLevel import org.a ...

  7. gulp-htmlmin 页面压缩插件 gulp插件 参数说明

    gulpfile.js var gulp = require('gulp'), htmlmin = require('gulp-htmlmin'); gulp.task('testHtmlmin', ...

  8. HBase学习笔记之HBase的安装和配置

    HBase学习笔记之HBase的安装和配置 我是为了调研和验证hbase的bulkload功能,才安装hbase,学习hbase的.为了快速的验证bulkload功能,我安装了一个节点的hadoop集 ...

  9. java正则表达式——规则表

    常用正则规则: 构造 匹配 字符 \\ 反斜线字符 \r 回车符 ('\u000D') \n 新行(换行)符 ('\u000A') 字符类 [abc] a.b 或 c [^abc] 任何字符,除了 a ...

  10. Bacteria(优先队列)

    题目链接:http://codeforces.com/gym/101911/problem/C 问题简述:给定n个细胞以及每个细胞的大小,相同的细胞能进行融合,如果能融合到只剩1个细胞则输出需要额外增 ...