MYSQL问题记录

mysql生成guid

SELECT UUID();

自增长id恢复从1开始

1 张三 男 20
2 王五 男 22
3 李四 男 25
4 陈大 男 19

现在我把 autoid=3 和 autoid=4 的两条记录删除
然后我再插入一条数据,例如:

insert into userinfo(autoid,username,sex,age) values('null','春哥','男','27');

但是面临一个问题,编号是从5开始了,而不是接着从3开始.毕竟我 第三条和第四条记录已经删除的了.

使用这条语句:alter table t_Myxiao7 AUTO_INCREMENT 3;
或者:TRUNCATE TABLE t_user ,不过这条语句会删除全部数据,

取分组排序第一

mysql5.7没有开窗函数

图片

jdbc标准url

jdbc:mysql://IP:3306/dbname?generateSimpleParameterMetadata=true&useUnicode=true&characterEncoding=utf8&useSSL=false
&serverTimezone=GMT%2b8

中文保存乱码

jdbc修改

serverTimezone=Asia/Shanghai -- 设置以"上海时区"为准
characterEncoding=utf8 -- 编码转化
serverTimezone=GMT%2b8 --东八区+8小时

jdbc:mysql://IP:3306/testdb?generateSimpleParameterMetadata=true&useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=GMT%2b8

Mysql时间差8个小时

https://blog.csdn.net/m0_67394006/article/details/124323043
https://m.php.cn/article/485145.html

# vim /etc/my.cnf  ##在[mysqld]区域中加上

default-time_zone = '+8:00'

# /etc/init.d/mysqld restart  ##重启mysql使新时区生效

图片

可以设置jdbc的serverTimezone=GMT%2b8

修改表结构出现异常

Waiting for table metadata lock 出现表锁定的情况,可能事务开启了
解决办法:
https://my.oschina.net/bobwei/blog/2251343

select trx_state, trx_started, trx_mysql_thread_id, trx_query from information_schema.innodb_trx
--删除进程
KILL trx_mysql_thread_id;

sql查询为空返回默认值

SELECT registration_date,formatDate FROM 
(
    -- 需要查询的数据
    SELECT 
    DISTINCT  registration_date,DATE_FORMAT(registration_date,'%Y年%m月%d日') 'formatDate'
    FROM credite_name_list   
    UNION  
    -- 数据为空返回默认
    SELECT 
     IFNULL(MIN(registration_date), DATE_FORMAT(NOW(), '%Y-%m-%d')) AS 'registration_date',
     IFNULL(MIN(DATE_FORMAT(registration_date, '%Y年%m月%d日')), DATE_FORMAT(NOW(), '%Y年%m月%d日')) AS 'formatDate'
    FROM credite_name_list
)a ORDER BY a.registration_date DESC 

图片

图片

表冲突

如果表名称、表字段跟mysql保留字冲突,需要修改添加: ``,不建议表字段跟保留字一样

更改mysql的字符集

在mysql5.7中需要更改字符集,否则中文乱码。8.0就默认utf8

show variables like 'character%'

添加:character-set-server=utf8mb4,重启mysql服务即可

图片

大小写敏感

如果使用Linux 提示表不存在,设置大小写敏感配置在/etc/my.cnf添加lower_case_table_names=1,重启MYSQL服务

posted @ 2026-08-30 19:09  清哥的码农生活  阅读(3)  评论(0)    收藏  举报