msyql安装
https://blog.csdn.net/I_No_dream/article/details/117249978 查看下载篇
环境外命令
#登录
mysql -u用户名 -p密码
#修改密码
mysqladmin -u用户名 -p旧密码 password 新密码
#导出指定库数据
mysqldump -u用户名 -p密码 库名 > 导出路径与文件名
#导出指定库中表数据 筛选条件不添加导出全部
mysqldump -u用户名 -p密码 库名 表名 --where="筛选条件" > 导出路径与文件名
环境内命令
#切换库
use 库名
#先切换库,再执行该命令导入
source 文件名
#设置打印输出信息
set GLOBAL innodb_status_output = on;
#设置打印锁的信息
set GLOBAL innodb_status_output_locks=on;
#输出执行时信息
show engine innodb status;
库命令
表命令
从文本根据特定的字符分割进行导入数据
cookieid3,2017-12-22,5
cookieid2,2017-12-24,1
a,2017-12-01,3
b,2017-12-00,3
CREATE TABLE overtest(
cookieid string,
createtime string,
pv int
)
row FORMAT delimited fields terminated BY ',';
LOAD data local inpath '/opt/module/data/hive-data/input/overtest.txt' INTO TABLE overtest;
binlog
binlog 格式有三种:row、statement、mixed
row:
拆分后的sql,如in条件有十个参数,那么会拆分成10条sql
statement:
binlog 里面记录的就是 SQL 语句的原文
mixed:
mysql会自动判断statement格式,是否会引发主备不一致的问题
如果statement格式会引起主备不一致的问题,自动使用row格式
如果statement格式不会引起主备不一致的问题,那么就用statement格式
相关语句
查看binlog格式
show variables like 'binlog_format%';
查看当前正在写入的binlog文件:
show master status;
查看 binlog 中的内容 form:从指定位置开始查看
show binlog events in 'mysql-bin.000001' form 10;
binlog 文件的物理位置:
/var/lib/mysql/mysql-bin.000001
借助 mysqlbinlog 命令,查看具体内容:
mysqlbinlog -vv mysql-bin.000001 --start-position=2986;
修改 binlog 格式
set global binlog_format='STATEMENT';
数据恢复
mysqlbinlog mysql-bin.000001 --start-position=1 --stop-position=3000 | mysql -h192.168.0.1 -P3306 -u$user -p$pwd;
解释:将 mysql-bin.000001 文件位置从 1到3000 的 binlog 在 192.168.0.1机器的数据库上回放,还原。