必备Mysql命令
文章来源: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 :通过mysql命令进行脚本数据导入
老徐,分享测试项目中实际能解决问题的干货! 今日分享: 如何通过mysql命令行,导入mysql脚本文件数据? ----- 解决实际的问题: 工作过程中,经常需要导入mysql脚本文件 很多同 ...
- Mysql命令大全
格式: mysql -h主机地址 -u用户名 -p用户密码 1.连接到本机上的MYSQL.首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root -p,回车后提示你输 ...
- ****Linux MySQL命令运用个人总结
1.xampp在linux下如何使用mysql命令 A: 解决方法(推荐第二个方法): 1.xampp中的命令工具在/opt/lampp/bin/目录中,所以可以这样运行mysql命令 /opt/la ...
- MySQL命令行登录的例子
环境:MySQL Sever 5.1 + MySQL命令行工具 问题:MySQL命令行登录 解决: 命令 行登录语法: mysql –u用户名 [–h主机名或者IP地址] –p密码 说明:用户名是你登 ...
- MySQL命令行下执行.sql脚本详解
本文主要介绍一个在MySQL命令行下执行脚本文件的例子,通过这个例子让我们来了解一下在命令行下MySQL是怎样执行脚本的吧.现在我们开始介绍这一过程. 1.首先编写sql脚本,保存为的:book.sq ...
- Mysql 命令大全
1.连接Mysql 格式: mysql -h主机地址 -u用户名 -p用户密码1.连接到本机上的MYSQL.首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root - ...
- mysql 在windows下,使用 net start mysql 命令发生错误 服务名无效 或 1067
mysql 在windows下,使用 net start mysql 命令发生错误 :服务名无效 或 1067 先使用mysqld -install安装一下 删除data目录下的日志等文件(因为之前 ...
- MySQL命令大全:MySQL常用命令手册、MySQL命令行大全、查询工具
1.连接Mysql 格式: mysql -h主机地址 -u用户名 -p用户密码 1.连接到本机上的MYSQL.首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root ...
- MYSQL命令行使用指南
一.连接MYSQL. 格式: mysql -h主机地址 -u用户名 -p用户密码 1.例1:连接到本机上的MYSQL. 首先在打开DOS窗口,然后进入目录 mysqlbin,再键入命令mysql -u ...
随机推荐
- javascript中 typeof和instanceof的区别
<一> js中typeof的用法进行了详细的汇总介绍 (1)返回一个变量的基本类型 回顾基本类型(number,string,boolean,null,undefined,object) ...
- SQL进阶系列之3三值逻辑与NULL
写在前面 普通编程语言里的布尔型只有true和false两个值,这种逻辑体系被称为二值逻辑,而SQL语言里,还有第三个值unknown,因此SQL的逻辑体系被称为三值逻辑. Why SQL存在三值逻辑 ...
- 编程小白入门分享四:Vue的安装及使用快速入门
一.VUE简介 vue是一个JavaMVVM库,是一套用于构建用户界面的渐进式框架,是初创项目的首选前端框架.它是以数据驱动和组件化的思想构建的,采用自底向上增量开发的设计.它是轻量级的,它有很多独立 ...
- 【Servlet】基于Jsp的微信Oauth2认证
作者:yongh701 挂载到微信服务器上的应用程序,能够通过微信Oauth2认证,能够抓取到用户的微信信息,当然,你首先要通过微信的帐号资质审核. 一.基本思想 二.基本过程 1.登陆微信的公众平台 ...
- C++中的类所占内存空间总结(转)
类所占内存的大小是由成员变量(静态变量除外)决定的,成员函数(这是笼统的说,后面会细说)是不计算在内的. 摘抄部分: 成员函数还是以一般的函数一样的存在.a.fun()是通过fun(a.this)来调 ...
- Mysql注入绕过安全狗
转载请加原文链接:https://www.cnblogs.com/Yang34/p/12055052.html 微信公众号:信Yang安全.同步更新,欢迎关注.文末有二维码. 正好最近在搞注入,昨天现 ...
- 选择排序python实现
选择排序(Selection sort)是一种简单直观的排序算法.它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完.注意每次查找 ...
- 原创:自定义spark GraphX中的collectNeighborIds方法
/** * 自定义收集VertexId的neighborIds * @author TongXueQiang */def collectNeighborIds[T,U](edgeDirection:E ...
- USACO 2009 Open 干草塔 Tower of Hay
USACO 2009 Open 干草塔 Tower of Hay Description 为了调整电灯亮度,贝西要用干草包堆出一座塔,然后爬到牛棚顶去把灯泡换掉.干草 包会从传送带上运来,共会出现N包 ...
- 求斐波那契数列中的第N个数
递推 递归 1.暴力递归 2.记忆化递归 对比下二者的效率