MySQL常见SQL语句用法
标签(linux): mysql
笔者Q:972581034 交流群:605799367。有任何疑问可与笔者或加群交流
表字段类型
- TINYINT 微小整数类型,可存储的容量为1字节
- INT 整数类型,可以存储容量为4个字节(4294967296)
- CHAR(M) 定长字符串类型,当存储时,总是用空格填满右边到指定的长度,最大可存储1<= M字节<= 255
- VARCHAR(M) 变长字符串类型,最大可存储1<= M字节<= 255
1.登陆MySQL数据库。
mysql -uroot -p
2.查看当前登录的用户。
select user();
3.创建数据库oldboy,并查看已建库完整语句。
create database oldboy;
show create database oldboy;
4.创建用户oldboy,使之可以管理数据库oldboy。
-- 方法一
create user oldboy@'localhost' identified by 'oldboy123';
grant all on oldboy.* to oldboy@'localhost';
-- 方法二
grant all on oldboy.* to oldboy@'172.16.1.%' identified by 'oldboy123';
-- 方法三
grant all on oldboy.* to oldboy@'172.16.1.0/255.255.255.0' identified by 'oldboy123';
5.查看创建的用户oldboy拥有哪些权限。
show grants for oldboy@'localhost';
5.查看当前数据库里有哪些用户。
select user,host from mysql.user;
6.进入oldboy数据库。
use oldboy
7.查看当前所在的数据库。
select database();
8.创建一张表test,字段id和name varchar(16)。
create table test( id int(4) not null, name varchar(16) not null);
9.查看建表结构及表结构的SQL语句。
show full columns from test;
10.插入一条数据“1,oldboy”
insert into test (id,name) values (1,'oldboy');
11.再批量插入2行数据 “2,老男孩”,“3,oldboyedu”。
insert into test (id,name) values (2,'老男孩'), (3,'oldboyedu');
12.查询名字为oldboy的记录。
select * from test where name='oldboy';
13.把数据id等于1的名字oldboy更改为oldgirl。
update test set name='oldgirl' where id=1;
14.在字段name前插入age字段,类型tinyint(2)。
alter table test add age tinyint(2) after id;
desc test; -- 查看表结构
15.不退出数据库备份oldboy数据库。
system mysqldump -uroot -poldboy123 -B oldboy > /opt/oldboy1.sql;
16.删除test表中的所有数据,并查看。
drop from test;
select * from test;
17.删除表test和oldboy数据库并查看
drop table test;
select * from test;
drop database oldboy;
show databases;
18.不退出数据库恢复以上删除的数据。
source /opt/oldboy1.sql
select * from test;
19.把id列设置为主键,在Name字段上创建普通索引。
-- 创建test表,并设置为主键:
-- 曾经在400-500万条记录的表上建立索引,花了90-180秒
create table tset(
id int(4) not null,
primary key (id) );
修改test表,在name字段上添加普通索引。
alter table test add index intex_name(name);
20.在字段name后插入手机号字段(shouji),类型char(11)。
alter table test add shouji char(11) after name;
21.所有字段上插入2条记录(自行设定数据)
insert into test(id,age,name,shouji) values(1,23,'oldboy','18888888888'),(2,24,'oldgirl','166666666');
22.删除Name列的索引。
alter table test drop index index_name;
-- 修改字段属性
alter table `promo_flash_sale_time` modify `end_time` timestamp NULL DEFAULT NULL COMMENT '结束时间';
23.查询手机号以135开头的,名字为oldboy的记录(提前插入)。
select shouji,name from test where shouji like '135%' and name='oldboy';
24.收回oldboy用户的select权限。
revoke select on oldboy.* from 'oldboy'@'localhost';
show grants for oldboy@'localhost';
25.删除oldboy用户。
drop user oldboy@'localhost';
26.删除oldboy数据库。
drop database oldboy;
show databases;
27.使用mysqladmin关闭数据库。
mysqladmin -uroot -poldboy123 shutdown;
ps -ef|grep mysql
28.忘记密码
#多实例跳过授权表启动mysql的方法 ,注意参数顺序
mysqld_safe --defaults-file=/data/3306/my.cnf --skip-grant-tables --user=mysql >/dev/null &
#登录方法
mysql -S /data/3306/mysql.sock
#进入后执行
update mysql.user set password=password("oldboy123") where user='root' and host='localhost'
29.select模糊匹配
mysql> select * from test where name like 'xiao%';
+----+----------+
| id | name |
+----+----------+
| 10 | xiaoting |
| 11 | xiaoya |
| 12 | xiaozhao |
+----+----------+
3 rows in set (0.00 sec)
MySQL常见SQL语句用法的更多相关文章
- MySQL · 性能优化 · MySQL常见SQL错误用法(转自-阿里云云栖社区)
作者:阿里云云栖社区链接:https://zhuanlan.zhihu.com/p/26043916来源:知乎著作权归作者所有,转载请联系作者获得授权. 前言 MySQL在2016年仍然保持强劲的数据 ...
- MySQL · 性能优化 · MySQL常见SQL错误用法
1. LIMIT 语句 分页查询是最常用的场景之一,但也通常也是最容易出问题的地方.比如对于下面简单的语句,一般DBA想到的办法是在type, name, create_time字段上加组合索引.这样 ...
- MySQL - 性能优化 & MySQL常见SQL错误用法(转载)
1. LIMIT 语句 分页查询是最常用的场景之一,但也通常也是最容易出问题的地方.比如: , ; 一般DBA想到的办法是在type, name, create_time字段上加组合索引.这样条件排序 ...
- MySql: 常见sql语句
1. show create table mysql> show create table t \G*************************** 1. row ************ ...
- 【MySQL性能优化】MySQL常见SQL错误用法
https://yq.aliyun.com/articles/72501?utm_content=m_14899
- MySQL数据库SQL语句基本操作
一.用户管理: 创建用户: create user '用户名'@'IP地址' identified by '密码'; 删除用户: drop user '用户名'@'IP地址'; 修改用户: renam ...
- mysql优化sql语句
mysql优化sql语句 常见误区 www.2cto.com 误区1: count(1)和count(primary_key) 优于 count(*) 很多人为了统计记录条数,就使 ...
- php面试专题---MySQL常用SQL语句优化
php面试专题---MySQL常用SQL语句优化 一.总结 一句话总结: 原理,万变不离其宗:其实SQL语句优化的过程中,无非就是对mysql的执行计划理解,以及B+树索引的理解,其实只要我们理解执行 ...
- Mysql常用sql语句(20)- 子查询重点知识
测试必备的Mysql常用sql语句系列 https://www.cnblogs.com/poloyy/category/1683347.html 子查询语句可以嵌套在 sql 语句中任何表达式出现的位 ...
随机推荐
- 微信小程序在开发中遇到的问题与解决方法
1. √ 这种错误多半是该js文件中没有Page这个方法,就算是空的js也必须要把Page({ })写上去 2. √ 这种错误多半是该json文件没有内容,所以必须要加上{ },就算是空内容也要加 ...
- ConstraintLayout知识记录
一.准备工作 1. 确保SDK Tools已经下载了ContraintLayout的支持库. 2. gradle中增加对ConstraintLayout的依赖. compile 'com.andr ...
- 关于Gson定制的分析
首先,为什么需要定制呢?很多同学可能觉得默认的不也挺好的嘛?最开始,我也是觉得的,而且我们一开始也是用默认的解析方式的,因为我们与外部约定的数据格式一直都比较稳定.但当外部数据不稳定,那么Gson默认 ...
- 如何给网站添加SSL证书(免费)
上篇讲了如何将网站部署到服务器上,这篇就讲如何给网站添加SSL证书. 1.先到腾讯云ssl证书认证那里申请一个证书 2.DNS认证 3.下载解压nginx里面的文件 4. 在服务器上/www目录下创建 ...
- java基础,集合,Arraylist,源码解析(基础)
ArrayList 是什么,定义? 这是动态的数组,它提供了动态的增加和减少元素,实现了List接口(List实现Collection,所以也实现Collection接口)灵活的设置数组的大小等好处 ...
- Codeforces 789A Anastasia and pebbles(数学,思维题)
A. Anastasia and pebbles time limit per test:1 second memory limit per test:256 megabytes input:stan ...
- map映照容器的使用
map映照容器可以实现各种不同类型数据的对应关系,有着类似学号表的功能. 今天在做并查集的训练时,就用上了map映照容器. 题目就不上了,直接讲一下用法.顺便说一下,实现过程是在C++的条件下. #i ...
- Codeforces Round #326 (Div. 2) B
1.每一个合数都可以由若干个素数相乘而得到 2.质因数知识 :求一个数因数的个数等于它的每个质因数的次数加一的和相乘的积因为质因数可以不用,所以要加一.例如6=2x3,两个质因数都是一次,如果两个质因 ...
- Java应用开发中的字符集与字符编码
事出有因 在向HttpURLConnection的输出流写入内容时,因没有设置charset,导致接收方对数据的验签不一致. URL url = new URL(requestUrl); //打开连接 ...
- [国嵌攻略][047][MMU功能解析]
MMU功能解析 1.Memory Management Unit(存储器管理单元) 2.两个进程读取同一个地址能读到不同的值.因为进程访问的是虚拟地址,通过MMU转换成不同的物理地址.不同的进程通过M ...