MySQL笔记

SELECT

select * from product A join product_details B on A.id=B.id
select * from product A left join product_details B on A.id=B.id

第一个满足条件才列出,第二个不满足条件的B字段以null代替

drop与truncate/delete
drop 删除数据库或数据表(表结构,属性和索引也会删除)
truncate /delete 删除表中数据(仅数据,不删除表)

字段类型
BOLD/TEXT 不能设置默认值

授予某个用户所用权限,包括修改权限的权限

grant all privileges on \*.\* to '${userName}'@'%' with grant option;

模糊查询一个数据库下的数据表

show tables like '%关键字%'

查看某个用户的权限,如果只是show grants就显示当前用户的权限

show grants for '${userName}'@'%'\G;

在命令最后加上\G可以按列显示结果

查看包含char的变量的当前会话值(session可以忽略)

show session variables like '%char%';

查看character_set_client的全局值(可能与当前会话值不一样)

show global variables like 'character_set_client';

查看当前会话执行insert语句的次数(global为自mysql启动以来全局执行insert语句的次数

show session status like 'com_insert'

show global status like 'com_insert'

查看当前连接的用户以及执行的MySQL(会影响性能,不要在高峰期使用)

show full processlist\G;

Binlog,Relay Log是什么?

  • Binlog是开发执行的SQL语句按照提交的先后顺序子啊MySQL内部生成的日志
  • Relay log是通过异步复制Master中的Binlog,并生成Slave的执行日志。也是按照SQL语句提交顺序存储

避免出现大事务,如果夹杂RPC的事务,还可能产生主从读数据不一致的情况

text无需指定默认值

decimal(m,n)m是整数位和小数位的个数,n是小数位数,默认为decimal(10,0)

主键一般用bigint

你可能感兴趣的:(MySQL)