mysql前半段总结
初始化总结
## 5.6
/app/mysql/scripts/mysql_install_db --user=mysql --basedir=/app/mysql-5.6.50 --datadir=/app/mysql-5.6.50/data
## 5.7
/app/mysql/bin/mysqld --initialize-insecure --user=mysql --basedir=/app/mysql --datadir=/app/mysql/data #不带初始化密码
/app/mysql/bin/mysqld --initialize --user=mysql --basedir=/app/mysql --datadir=/app/mysql/data #带初始化密码
选项
### 外
-u:指定用户
-p:指定密码
-h:指定主机
-S:指定socket
-P:指定端口
-e:免交互指定MySQL的SQL语句
strings
### 内
? 查看帮助
\q : quit exit 退出mysql终端 MySQL5.6 Ctrl + c
\c : 终止命令 MySQL5.7 Ctrl + c
\s : 查看MySQL状态
\G : 格式化输出
\. : source 导入数据
\! : system 后面接系统命令
my.cnf 配置文件
/etc/my.cnf
/etc/mysql/my.cnf
$besedir/my.cnf
mysqld_safe --defaults-extra-file=/opt/my.cnf
~/.my.cnf
[mysqld]
basedir=/app/mysql
datadir=/app/mysql/data
server_id=1
log-bin=mysql-bin
socket=/opt/mysql.sock
# 指定字符集
character_set_server=utf8
# MySQL的内存要占物理机内存的75%~80%
innodb_buffer_pool_size=134217728
# 指定存储引擎
default-storage-engine=innodab
[mysql]
user=root
password=123
prompt="\\u@\\h:\\d \\r:\\m:\\s>"
类型
###### 数字
int 整形
bigint 超大整形
tinyint 小整形 -128-127
float 浮点型 小数点后6位
double 浮点型 小数点后15位
##### 字符串
char 定义字符串
varchar 可变长字符串
enmu 枚举类型
#### 时间类型
timestamp
datatime
约束
NULL 空
not null 非空
default 默认
primary key 主键
auto_increment 自增
unique key 唯一键
unsigned 无符号
comment 注释
函数
password() # 密码加密
now() # 现在时间
distinct() #去重
max() -- 最大
min() -- 最小
avg() -- 平均
sum() -- 求和
count() -- 统计
杂
like ----- 模糊匹配
not like ----- 排除模糊匹配
union all ----- 对两个结果集进行并集操作,包括重复行,不进行排序
union ----- 对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序;
命令
### DDL :create alter drop
### DML :desc insert delete upadate
### DCL :grant revoke
### DQL :show select
# 重新加载授权表
flush privileges
# 分析语句
desc / explain
# 创建一个用户/表/库
create user/table/database *
# 创建一个用户 并授权
grant all on *.* to root@'%' identified by '123';
# 设置一个表 重命名/添加(字段,索引)/重新设置一个字段/重新设置一个字段并重命名
alter table 表 rename/add/modify/change ****
alter database 库 charset utf8 collate utf8_bin;
# 修改一个表中字段的数据
update 表 set aaa=1 where aaa=6;
# 删除一个表中符合判断的数据
delete from 表 where aaa=1 and bbb=2;
#查询 natural join(自连接)/* join * on * join * (内连接)/(left join) (right join)
select * from
# 查看表属性
desc 表
# 插入数据
insert into 表() values()
# 删除
drop
truncate
### show
show databases;
show tables;
show tables from zls;
show create database zls;
show create table zls.stu30;
# 查询用户
show grants for test111@'%';
# 查询内置变量
show variables like '%char%';
# 查询存储引擎
show engines;
# 查询MySQL支持的字符集
show charset;
# 查询MySQL支持的校验规则
show collation;
# 查询 MySQL后台的语句
show processlist;
show full processlist;
pt-query-digest --user=anemometer --password=123 --review h=127.0.0.1,D=slow_query_log,t=global_query_review --history h=127.0.0.1,D=slow_query_log,t=global_query_review_history --filter=" \$event->{Bytes} = length(\$event->{arg}) and \$event->{hostname}=\"$HOSTNAME\"" --no-report --limit=0% /app/mysql/data/slow.log