本文有以下内容:
1、mysql导入txt文件的数据;
2、mysql秒数转为日期;
3、mysql忽略表名大小写(linux)
————————————————————————————————————————
一、mysql导入txt文件的数据
例:
有abc.txt文件
内容:
张三,123
李四,456
有表 user
字段:
id 主键
username 用户名
password 密码
now_uuid 同步批次uuid
syn_date 同步时间
方法:
-- 定义变量,接收uuid
SET @now_uuid = UUID();
-- 定义变量,接收当前时间
SET @syn_date = NOW();
-- 从txt文件同步数据,并设置uuid与时间
LOAD DATA LOCAL INFILE 'D:/abc.txt' INFO TABLE user CHARACTER SET utf8 FIELDS TERMINATED BY ','
LINES TERMINATED BY '\r\n' (username, password) SET now_uuid = @now_uuid, syn_date = @syn_date;
-- 删除不是本次批次uuid的数据
DELETE FROM user WHERE now_uuid != @now_uuid;
二、mysql秒数转为日期
1、计算两个时间之前的天数/小时/秒数:
例:计算1900年1月1日 至 1970年1月1日之间的天数/小时/秒数
TIMESTAMPDIFF(DAY, '1900-01-01 00:00:00', '1970-01-01 00:00:00')*24*3600;
2、秒数转为日期:
FROM_UNIXTIME(秒数, '%Y-%m-%d');
三、mysql忽略表名大小写(linux)
(1) 登录mysql
mysql -u root -p
(2) 查看是否开启忽略表名大小写:
show variables like "%case%";
若显示 lower_case_table_names 0 表示未开启,1 表示已开启
(3) 查看mysql使用的my.cnf文件:
列出所有my.cnf文件:locate my.cnf
查看mysql进程是否指定了my.cnf文件:ps aux|grep mysql|grep 'my.cnf' 有输出则表示有指定
若无输出,则需要指定:
在mysql停止的状态下执行:mysqld --defaults-file=/etc/my.cnf --user=root
(4) 修改配置文件:
vim /ec/my.cnf
在[mysqld]节点下添加:
lower_case_table_names=1
(5) 重启mysql,使用第二步命令验证