MYSQL个人笔记

文件管理

binlog

-- 设置自动清理binlogs
在my.cnf中找到[mysqld]加入
expire_logs_days = 15 #自动删除15天前的日志。默认值为0,表示从不删除。
log-bin=mysql-bin
binlog-format=ROW

-- 开启数据库日志跟踪
set  global general_log = ON
OFF关闭

-- 查看最新的binlog文件名称
show  master status

-- 删除所有binlog日志,新日志编号从头开始
RESET MASTER;  

-- 删除mysql-bin.095之前所有日志
PURGE MASTER LOGS TO 'mysql-bin.095';  

-- 删除2022-04-02 22:46:26之前产生的所有日志
PURGE MASTER LOGS BEFORE '2022-04-02 22:46:26';

格式

日志格式

-- log_timestamps 参数默认使用 UTC 时区,比北京时间慢 八小时,导致查看日志不方便。修改为 SYSTEM 取数据库服务时间。

-- 查看数据库日志时间格式
show  global variables  like  'log_timestamps'
-- 修改数据库日志时间格式为获取数据库服务器时间
set global log_timestamps=system

时间戳

-- 获取当前时间
SELECT NOW(); // 2022-04-19 02:03:52

-- 时间日期格式转换成时间戳格式,UNIX_TIMESTAMP()
SELECT UNIX_TIMESTAMP(NOW()); // 1650305047

-- 时间戳格式转换成时间日期格式,FROM_UNIXTIME()
SELECT FROM_UNIXTIME(1650247217); // 2022-04-18 10:00:17

用户权限


-- 修改数据库用户密码
set password for 'root'@'%'=Password('123456');


-- 授权全部权限给指定用户
grant all privileges on *.*  to 'root'@'%';


-- 降低密码规则(临时)
set global  validate_password_length =0;
set global validate_password_mixed_case_count=0;
set global validate_password_number_count=0;
set global validate_password_policy=0;
set global validate_password_special_char_count =0;

-- mysql安全模式

show variables like 'sql_safe_updates';
备注:
mysql安全模式:mysql发现delete、update语句没有添加where或者limit条件时会报错。整个sql将无法执行,有效防止了误删表的情况。
设置为ON之后
    update语句:where条件中列(column)没有索引可用且无limit限制时会拒绝更新。where条件为常量且无limit限制时会拒绝更新。
    delete语句: ①where条件为常量,②或where条件为空,③或where条件中 列(column)没有索引可用且无limit限制时拒绝删除。

猜你喜欢

转载自blog.csdn.net/bihu2018/article/details/124234058