一. 创建用户
命令:
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
说明:
- username:你将创建的用户名
- host:指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost,如果想让该用户可以从任意远程主机登陆,可以使用通配符
%
- password:该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器
例子:
CREATE USER 'dog'@'localhost' IDENTIFIED BY '123456';
CREATE USER 'pig'@'192.168.1.101_' IDENDIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '';
CREATE USER 'pig'@'%';
二. 授权:
命令:
GRANT privileges ON databasename.tablename TO 'username'@'host'
说明:
- privileges:用户的操作权限,如
SELECT
,INSERT
,UPDATE
等,如果要授予所的权限则使用ALL
- databasename:数据库名
- tablename:表名,如果要授予该用户对所有数据库和表的相应操作权限则可用
*
表示,如*.*
例子:
GRANT SELECT, INSERT ON test.user TO 'pig'@'%';
GRANT ALL ON *.* TO 'pig'@'%';
注意:
用以上命令授权的用户不能给其它用户授权,如果想让该用户可以授权,用以下命令:
GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;
三,修改密码
alter user 'root'@'localhost' identified by 'Root@123456';
四,mysql 数据库备份
mysqldump -uroot -p iot | gzip > /usr/dbbak/backupfile20210513_1.sql.gz
五 ,mysql 日期加减法 日期比较
- DATE_ADD(),ADDDATE(),ADDTIME()
例
SELECT CARD_ID ,MAX(ORDER_FLOW_INVALID_TIME) as INVALID_TIME FROM `card_pooled_quota` GROUP BY CARD_ID HAVING INVALID_TIME <= date_add(now(), interval 7 day)
六 ,查询 七天内过期的记录
SELECT
*
FROM
card_pooled_quota
WHERE
QUOTA_ID IN (
SELECT
a.QUOTA_ID AS QUOTA_ID
FROM
(
SELECT
CARD_ID,
MAX( ORDER_FLOW_INVALID_TIME ) AS ORDER_FLOW_INVALID_TIME
FROM
`card_pooled_quota`
GROUP BY
CARD_ID
HAVING
ORDER_FLOW_INVALID_TIME <= date_add( now(), INTERVAL 7 DAY )) AS e
INNER JOIN `card_pooled_quota` a ON e.CARD_ID = a.CARD_ID
AND e.ORDER_FLOW_INVALID_TIME = a.ORDER_FLOW_INVALID_TIME)
七 提取日期格式内的内容
获取上月的数据
SELECT * FROM xxx WHERE pay_time BETWEEN
DATE_FORMAT(DATE_ADD(CURRENT_DATE,INTERVAL -1 MONTH),'%Y-%m-01')
AND DATE_FORMAT(CURRENT_DATE,'%Y-%m-01')
4
八。
MySQL不支持Select Into语句直接备份表结构和数据,一些种方法可以代替,如下:
#MYSQL不支持:
Select * Into new_table_name from old_table_name; 这是sql server中的用法
#替代方法:
Create table new_table_name (Select * from old_table_name);
九. 清除日志文件。收缩数据库
PURGE MASTER LOGS TO 'mysql-bin.010′;
PURGE MASTER LOGS BEFORE '2008-06-22 13:00:00′;