MySQL使用记录

1. 连接远程数据库

方法

1
mysql -h <主机IP> -P <mysql端口> -u <mysql登录账号> -p[密码]

<> 表示必填,

[] 表示选填,

样例:

1
2
3
4
5
6
7
8
MySQL 连接远程数据库(192.168.5.116),端口“3306”,用户名为“root”,密码“123456” 

方法一,显示密码
mysql -h 192.168.5.116 -P 3306 -u root -p123456

方法二,不显示密码
mysql -h 192.168.5.116 -P 3306 -u root -p
会在登录时提示输入密码

2. 创建用户并授权

1
2
3
4
5
6
7
8
-- 创建用户 tt,设置密码为 xxx
CREATE USER 'tt'@'localhost' IDENTIFIED BY 'xxx';

-- 将本地所有库表的所有权限授予 tt 用户
GRANT ALL ON *.* to tt@'localhost' IDENTIFIED BY 'xxx';

-- 更新权限
FLUSH privileges;

授权部分操作权限

1
2
3
-- 授予远程登录 tt 用户时对所有库表执行部分权限
GRANT create,insert,select ON *.* to tt@'%' IDENTIFIED BY 'xxx';
FLUSH privileges;

tt@'localhost' , 表示本地登录的权限设置;

tt@'%' , 表示远程登录时的权限设置;

ON *.* ,表示所有库表,当需要指定库表是,ON <库>.<表>, 进行对应替换即可。

3. 时间转换

timestamp 转为指定时间格式

将 timestamp 格式转换为指定 date 格式

  • FROM_UNIXTIME(unix_timestamp,format)
    • unix_timestamp 是 10 位时间戳,如果是 13 位的时间戳,则需要/1000

将 date 格式转换为指定 date 格式

  • DATE_FORMAT(date,format)

常用格式占位符

  • %Y年、%m月、%d日、%H时、%i分、%s秒

样例:

1
2
3
4
5
6
7
8
select DATE_FORMAT(UPDATE_TIME,'%Y-%m-%d') as date from info_apply;

-- update_time 2022-10-10 12:45:43
-- 结果为 2022-10-10

select FROM_UNIXTIME(UPDATE_TS,'%Y-%m-%d') as date from info_apply;
-- UPDATE_TS 1665832560
-- 结果为 2022-10-15

MySQL查看数据表最后更新时间

需求场景:查看数据库中的某一个数据表是否有更新, 以判断数据更新的最后时间, 以判断出有价值的信息。

查看指定数据库的指定表的更新时间

1
select `TABLE_NAME`, `UPDATE_TIME` FROM `information_schema`.`TABLES` where `TABLE_SCHEMA` = 'DB_NAME' and `TABLE_NAME` = 'TABLE_NAME';

需要查看数据库的更新时间则去掉 and TABLE_NAME = 'TABLE_NAME' 部分;

样例

1
2
3
select table_name,update_time from information_schema.`TABLES` it where it.TABLE_SCHEMA='qa_test' order by update_time desc;

-- 查看 qa_test 库中更新时间并根据 update_time 字段倒序排序;
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2022-2023 ligongzhao
  • 访问人数: | 浏览次数:

请我喝杯咖啡吧~

支付宝
微信