grep 'temporary password' /var/log/mysqld.log //找到默认密码
mysql -uroot -p
set password for 'root'@'localhost'=password('NEWPASSWORD'); 或者ALTER USER 'root'@'localhost' IDENTIFIED BY 'NEWPASSWORD'; // 修改密码,注意密码要复杂一些,否则会不能通过。
添加远程用户(mysql 8.0以后必须要先创建用户再设置)
create user 'miroot'@'%' identified by 'Hadoop3!';
grant all privileges on *.* to 'miroot'@'%';
查看并修改编码
mysql -u root -p show variables like '%char%; 看到有的编码不是 utf8 更改配置文件 vim /etc/my.cnf 在[mysqld]下面添加以下两句
select * from 表名 where to_days(时间字段名) = to_days(now());
昨天
SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ) - TO_DAYS( 时间字段名) <= 1
7天
SELECT * FROM 表名 where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(时间字段名)
近30天
SELECT * FROM 表名 where DATE_SUB(CURDATE(), INTERVAL 30 DAY) <= date(时间字段名)
本月
SELECT * FROM 表名 WHERE DATE_FORMAT( 时间字段名, '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )
上一月
SELECT * FROM 表名 WHERE PERIOD_DIFF( date_format( now( ) , '%Y%m' ) , date_format( 时间字段名, '%Y%m' ) ) =1
#查询本季度数据
select * from `ht_invoice_information` where QUARTER(create_date)=QUARTER(now());
#查询上季度数据
select * from `ht_invoice_information` where QUARTER(create_date)=QUARTER(DATE_SUB(now(),interval 1 QUARTER));
#查询本年数据
select * from `ht_invoice_information` where YEAR(create_date)=YEAR(NOW());
#查询上年数据
select * from `ht_invoice_information` where year(create_date)=year(date_sub(now(),interval 1 year));
#查询当前这周的数据
SELECT name,submittime FROM enterprise WHERE YEARWEEK(date_format(submittime,'%Y-%m-%d')) = YEARWEEK(now());
#查询上周的数据
SELECT name,submittime FROM enterprise WHERE YEARWEEK(date_format(submittime,'%Y-%m-%d')) = YEARWEEK(now())-1;
#查询当前月份的数据
select name,submittime from enterprise where date_format(submittime,'%Y-%m')=date_format(now(),'%Y-%m')
#查询距离当前现在6个月的数据
select name,submittime from enterprise where submittime between date_sub(now(),interval 6 month) and now();
#查询上个月的数据
select name,submittime from enterprise where date_format(submittime,'%Y-%m')=date_format(DATE_SUB(curdate(), INTERVAL 1 MONTH),'%Y-%m')
select * from ` user ` where DATE_FORMAT(pudate, ' %Y%m ' ) = DATE_FORMAT(CURDATE(), ' %Y%m ' ) ;
select * from user where WEEKOFYEAR(FROM_UNIXTIME(pudate,'%y-%m-%d')) = WEEKOFYEAR(now())
select * from user where MONTH (FROM_UNIXTIME(pudate, ' %y-%m-%d ' )) = MONTH (now())
select * from [ user ] where YEAR (FROM_UNIXTIME(pudate, ' %y-%m-%d ' )) = YEAR (now()) and MONTH (FROM_UNIXTIME(pudate, ' %y-%m-%d ' )) = MONTH (now())
select * from [ user ] where pudate between 上月最后一天 and 下月第一天
可选,用于定义事件是否循环执行,即是一次执行还是永久执行,默认为一次执行,即 NOT PRESERVE
ENABLE | DISABLE | DISABLE ON SLAVE
可选项,用于指定事件的一种属性。其中,关键字ENABLE表示该事件是活动的,也就是调度器检查事件是否必选调用;关键字DISABLE表示该事件是关闭的,也就是事件的声明存储到目录中,但是调度器不会检查它是否应该调用;关键字DISABLE ON SLAVE表示事件在从机中是关闭的。如果不指定这三个选择中的任意一个,则在一个事件创建之后,它立即变为活动的。
-- 创建用户信息表CREATE TABLE IF NOT EXISTS tb_user
(
id INT AUTO_INCREMENT PRIMARY KEY COMMENT '用户编号',
name VARCHAR(30) NOT NULL COMMENT '用户姓名',
create_time TIMESTAMP COMMENT '创建时间'
) COMMENT = '用户信息表';
(2)创建事件。
-- 创建事件
CREATE EVENT IF NOT EXISTS event_user
ON SCHEDULE EVERY 5 SECONDON COMPLETI
ON PRESERVE
COMMENT '新增用户信息定时任务'
DO INSERT INTO tb_user(name,create_time) VALUES('pan_junbiao的博客',NOW());
CREATE PROCEDURE p_total()
BEGIN
DECLARE n_total INT default 0;
SELECT COUNT(*) INTO n_total FROM db_database11.tb_user;
INSERT INTO tb_total (userNumber,createtime) VALUES(n_total,NOW());
END;
(2)创建名称为e_autoTotal的事件,用于在每个月的第一天凌晨1点调用存储过程。
CREATE EVENT IF NOT EXISTS e_autoTotal
ON SCHEDULE EVERY 1 MONTH STARTS DATE_ADD(DATE_ADD(DATE_SUB(CURDATE(),INTERVAL DAY(CURDATE())-1 DAY),INTERVAL 1 MONTH),INTERVAL 1 HOUR)
ON COMPLETION PRESERVE ENABLE
DO CALL p_total();
/* 查询数据库 ‘my_table_name’ 所有表注释 */
SELECT TABLE_NAME,TABLE_COMMENT FROM information_schema.TABLES WHERE table_schema='my_table_name';
2. 要查询表字段的注释
/* 查询数据库 ‘mammothcode’ 下表 ‘my_table_name1’ 所有字段注释 */
SELECT COLUMN_NAME,column_comment,COLUMN_TYPE,COLUMN_DEFAULT FROM INFORMATION_SCHEMA.Columns WHERE table_name='my_table_name1' AND table_schema='mammothcode'
3. 一次性查询数据库 “mammothcode” 下表注释以及对应表字段注释
SELECT t.TABLE_NAME,t.TABLE_COMMENT,c.COLUMN_NAME,c.COLUMN_TYPE,c.COLUMN_COMMENT FROM information_schema.TABLES t,INFORMATION_SCHEMA.Columns c WHERE c.TABLE_NAME=t.TABLE_NAME AND t.TABLE_SCHEMA='mammothcode'
2.通过输入命令 mysql -u root -p 指定root用户登录MySQL,输入后回车会提示输入密码,输入我们原来的密码然后回车。
3.修改MySQL的root用户密码,格式:mysql> set password for 用户名@localhost = password(‘新密码’); 例如(上面例子将用户root的密码更改为root):mysql> set password for root@localhost = password(‘root’);
首先声明,这种方法我测试了半个小时也没有成功,但是网上查询很多人都成功了,感兴趣的话可以尝试一下。下面是步骤 首先还是通过cmd 登录MySQL 连接权限数据库: use mysql; 改密码:update user set password=password(“123”) where user=“root”;(别忘了最后加分号) 。 刷新权限(必须步骤):flush privileges;
3.再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),输入mysql回车,如果成功,将出现MySQL提示符 >。 连接权限数据库: use mysql; 。 4.改密码:update user set password=password(“root”) where user=“root”;(别忘了最后加分号) 。 刷新权限(必须步骤):flush privileges; 。 退出 quit; 重启mysql服务,使用用户名root和刚才设置的新密码root登录就ok了;