mysql基础
lanlan_bupt
一只快乐的程序猿
展开
-
mysql8 设置了默认值 CURRENT_TIMESTAMP 依然报null问题
前言mysql数据库坏掉了,重装的时候顺便升级成了8.然后启动服务发现create_time时间戳字段报空值,找了半天。。。参考文章https://blog.csdn.net/wanbeila/article/details/89296900?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.control&dist_request_id=1328666.7686.16原创 2021-03-17 13:48:13 · 2434 阅读 · 1 评论 -
mysql锁表 Lock wait timeout exceeded
前言有一个表突然被锁了,可读取但是无法插入,找了几种解决方案。记录一下解决方案1、杀掉阻塞锁死的进程:information_schema.`PROCESSLIST`information_schema这个数据库是系统库,有很多东西都从这里查找,PROCESSLIST 这个表是可以查看进程id,和进程状态,在这个表里面找到锁死的进程,kill id 杀掉。2、unlock 命令 手动解锁神奇的是在PROCESSLIST里面没有找到死锁的进程,因此尝试直接解锁:UNLOCK T原创 2021-03-17 10:13:03 · 223 阅读 · 0 评论 -
mysql命令运行报错:Can‘t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock‘
前言一个很久没用的服务器,服务器上已安装了mysql,并且通过sqlyog3306端口可以正常访问。然而我直接在命令行里面输入 mysql -uroot -p 想直接在服务器里面连接mysql 的时候,报错:Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'解决方案查了一下,是因为/var/run/mysqld/mysqld.sock这个文件的路径不对。进到 mysql原创 2021-03-16 13:16:31 · 35571 阅读 · 7 评论 -
mysql 中断主从数据库同步
mysql主从同步中断重启命令:stop slave;start slave;原创 2021-03-16 13:07:03 · 212 阅读 · 0 评论 -
mysql 数据库断电崩溃恢复
前言嘤。晚上跑了个循环删除部分数据的程序,因为表很大要删的很多,没有索引不能用where,所以遍历表取出来数据检测后根据id删。早上起来发现半夜断电了,可能因为我这个程序在运行中的时候断电了,mysql启动不起来了。。参考文献https://www.cnblogs.com/lnlvinso/p/4596531.html大致思路先强制启动,将数据备份出来,然后找到坏表删掉或重装数据库,将数据恢复回去。启动报错运行 service mysql start 启动命令报错,查看了一下原创 2021-03-15 10:07:00 · 2691 阅读 · 0 评论 -
mysql 常用函数汇总
目录长度LENGTH( )CHAR_LENGTH( )字符串拼接CONCAT( )CONCAT_WS( )GROUP_CONCAT( )记录一下,持续更新,不一定全。长度LENGTH( )字段长度参数1个,可以填字段名CHAR_LENGTH( )字符串长度 里面参数可以填字段名字符串拼接CONCAT( )concat里面可以传多个参数,会把它们拼接到一起,返回一个完整的字符串。我常用的语句是这个:SELECT CONCA...原创 2021-02-03 10:24:02 · 80 阅读 · 1 评论 -
mysql 创建删除用户并授只读权限
删除用户flush privileges;drop user '用户名';添加用户create user '用户名'@'%' identified by '密码';授权GRANT SELECT ON 数据库名.表名 TO '用户名'@'%' IDENTIFIED BY '密码';GRANT SELECT, INSERT, UPDATE, DELETE ON 数据库名.表名 TO '用户名'@'%' IDENTIFIED BY '密码';GRANT ALL PRIVILEG原创 2020-11-17 16:10:47 · 538 阅读 · 0 评论 -
mysql简单语句汇总
基本句式差不多是这样的:SELECT * FROM table_name WHERE id >95093 ORDER BY id DESC LIMIT 500解释一下:SELECT * 表示查询全部列FROM table_name 表示原创 2020-03-27 10:46:58 · 243 阅读 · 0 评论 -
MySQL error:——解决MySQL server has gone away(Got a packet bigger than 'max_allowed_packet' bytes)问题
问题描述:导入库的时候导入sql脚本,导入到一半报错,查看问题日志,描述为:MySQL server has gone away这是啥问题呢。。。。mysql服务器没了?我尝试重启了一下mysql服务,再重新导入,还是这个错误。然后试着把问题那一句sql拿出来单独跑,得到了报错:Got a packet bigger than 'max_allowed_packet' by...原创 2020-03-24 15:09:33 · 180 阅读 · 0 评论 -
Mysql Error:——创建表报错表存在,删表报错找不到表的问题
问题描述今天遇到了一个神奇的问题。我创建表t_bidder的时候显示如下错误:它说我的表已存在。但是我的数据库里面看不见这个表呀。show tables 里面也没有这个表。看,空的。我想那你说有就有吧,我先把它删掉,再建不就完了嘛。然后我尝试把它删掉:哦。薛定谔的表。解决方案我觉得应该是我上次删表的时候没删干净的问题。既然是薛定谔的表那我们去观测...原创 2020-03-24 14:19:05 · 2409 阅读 · 3 评论 -
mysql 创建函数 split
因为想用split,但是mysql里面没有split的函数,就百度里面找了一个CREATE FUNCTION SPLIT_STR( X VARCHAR(255), delim VARCHAR(12), pos INT)RETURNS VARCHAR(255)RETURN REPLACE(SUBSTRING(SUBSTRING_INDEX(X, delim, pos), ...原创 2020-01-19 14:41:35 · 339 阅读 · 0 评论 -
mysql批量导入记录
我好蠢啊155555551之前要导入大量数据,我一条一条读文件然后insert到数据库里。后来想到可以批量导入,试了一下,感觉自己之前蠢爆了一句一句执行sql好慢的,批量导入要快好多一般的sql插入语句是这样的:INSERT INTO USER (username,PASSWORD) VALUES ('111','1')插入多条的时候就可以是这样的:INSERT INT...原创 2019-08-16 17:32:47 · 158 阅读 · 0 评论 -
SQLyog中断查询语句
感觉自己好蠢。由于数据库数据很多,最开始接触这么大量的数据的时候不会用索引,总是卡死,跑一堆死语句,我又不会停,然后我们boss一脸无语的挨个给我杀掉orz后来发现SQLyog这个管理数据库的小海豚是可以终止sql语句的。这张图上这个三个蓝色的圆圆按钮的位置,跑查询语句的时候会变成红色的中断按钮。点这个红叉叉就可以中断。蠢死我orz感谢不嫌弃这么蠢的我的boss和可...原创 2019-08-14 15:10:19 · 2946 阅读 · 6 评论