mysql
文章平均质量分 82
鹤啸九天-西木
天行健,男儿当自强不息;地势坤,君子以厚德载物。
展开
-
SQL对象命名使用保留字导致SQL Error: 1064, SQLState: 42000
如果在表或字段等数据库对象的命名中使用以下关键字和保留字(不区分大小写),就会报:SQL Error: 1064, SQLState: 42000。我遇到的现象是插入前2条记录都没报错,第3条及以后的插件都报这个错,所以可能跟mysql的版本有关系。为避免此类问题,尽量不使用这些关键字和保留字.........原创 2022-06-09 15:31:39 · 2500 阅读 · 0 评论 -
数据库的事务、隔离级别和锁
事务是一组原子操作单元,从数据库角度说,就是一组SQL指令,要么全部执行成功,,要么撤销不执行。若因为某个原因其中一条指令执行有错误,则撤销先前执行过的所有指令。原创 2015-12-31 21:55:39 · 1241 阅读 · 1 评论 -
mysql特殊语法
一、insert ... onduplicate key update ... (注意:update后不跟set): 当insert的字段中存在唯一约束,且插入的数据在这些唯一约束的字段上数据库中已存在同样的数据时,将会使用on duplicate key子句进行更新操作,比如update `count` = `count` + 1,其中`count`为表中的一个int类型的字段...原创 2019-03-31 19:46:29 · 509 阅读 · 0 评论 -
PHP连接mysql的三种方式
PHP与MySQL的连接有三种API接口,分别是:PHP的MySQL扩展 、PHP的mysqli扩展 、PHP数据对象(PDO) ,下面针对以上三种连接方式做下总结,以备在不同场景下选出最优方案。 1、PHP的MySQL扩展是设计开发允许php应用与MySQL数据库交互的早期扩展。MySQL扩展提供了一个面向过程的接口,并且是针对MySQL4.1.3或者更早版本设计的...原创 2019-02-18 11:29:19 · 1354 阅读 · 0 评论 -
mysql的用户权限总结
1、USAGE:连接(登录)权限,建立一个用户,就会自动授予其usage权限(默认授予)。该权限只能用于数据库登录,不能执行任何操作,且该权限不能被回收,即使使用REVOKE也不能删除用户权限。 grantusageon*.*to 'user'@'localhost'identifiedby 'user123';2、SELECT:使用SELECT查看表内容的权限,拥...原创 2018-08-28 21:55:57 · 5454 阅读 · 0 评论 -
Linux之mysql的备份及主从复制
一、数据备份数据备份的主要作用是当误操作发生时,可以将数据回退到某个时间点。数据备份根据备份数据的范围可以分为: 1、完全备份:备份整个数据库; 2、部分备份:备份部分数据,比如备份数据库中的某一张表。部分备份又细分为: 1)增量备份:从上一次 备份(完全备份或增量备份)时间开始以来变化的数据; 2)差...原创 2018-08-26 23:45:26 · 1190 阅读 · 0 评论 -
Linux之mysql安装及初始登录
1、一般都会安装在/usr/local下,相当于windows系统中C盘下的Program Files,所以将安装包放在/usr/local下并解压;2、创建mysql系统用户和组,用于启动mysql3、将解压出的目录重命名为mysql(或者使用ln -s建立软连接,方便管理),并修改该目录的所属用户和组,修改访问控制权限;4、查看mysql安装目录,目录结构如图所示:...原创 2018-08-06 01:26:15 · 11096 阅读 · 0 评论 -
mysql获取时间
Unix时间戳是指格林威治时间自1970年1月1日00时00分00秒(此时位为东八区的北京时间为:1970-01-01 08:00:00)至当前时间的总秒数。Unix时间戳是指格林威治时间自1970年1月1日00时00分00秒(此时位为东八区的北京时间为:1970-01-01 08:00:00)至当前时间的总秒数。原创 2018-07-08 14:42:15 · 15391 阅读 · 1 评论 -
mysql的explain执行计划
explain显示了mysql如何使用索引来处理select语句以及连接表,无法分析存储过程、insert、update和delete等语句,可以帮助我们选择更好的索引和写出更优化的查询语句。用法:其中: 1、id:每个被独立执行的操作的标识,表示对象被操作的顺序;id值大,先被执行;如果相同,执行顺序从上到下; 2、select_t...原创 2018-06-06 18:28:51 · 211 阅读 · 0 评论 -
mysql索引
索引是存储引擎用于快速查找记录的一种数据结构,更多请访问数据结构之树(B+树)。通过合理的使用数据库索引可以大大提高系统的访问性能。原创 2018-06-06 16:36:27 · 197 阅读 · 1 评论 -
mysql字符集问题
一、查询结果乱码: 使用mysql执行select命令后查到的结果如果含有汉字时会出现乱码,执行show variables like 'character%',获取字符集配置为: latin1其实就是我们通常所说的ISO-8859-1字符集,是不支持汉字的。需要改成utf8,执行set names utf8,重新执行select语句就不乱码了。可以查看此时字...原创 2018-05-17 21:48:16 · 1421 阅读 · 0 评论 -
数据库的分表与分区
一、为什么要分表和分区? 日常开发中我们经常会遇到大表的情况,所谓的大表是指存储了百万级乃至千万级条记录的表。这样的表过于庞大,导致数据库在查询和插入的时候耗时太长,性能低下,如果涉及联合查询的情况,性能会更加糟糕。分表和表分区的目的就是减少数据库的负担,提高数据库的效率,通常点来讲就是提高表的增删改查效率。转载 2017-02-11 11:05:50 · 639 阅读 · 0 评论 -
JDBC介绍
(一)JDBC方式(Java DataBase Connectivity)包括:1、JDBC-ODBC(Open Database Connectivity)桥接(也称ODBC方式)2、纯java驱动(也称JDBC方式)(二)数据库连接池1、JNDI2、C3p03、DBCP4、BoneCP原创 2015-05-24 19:05:25 · 1150 阅读 · 0 评论 -
mysql 常用命令
一、连接数据库:mysql -hhostname -Pport -uusername -ppassword dbname;hostname可以是ip地址,连接指定数据库,当然连接时也可以先不指定;二、切换数据库:use dbname;切换到要操作的数据库。如果连接时不指定数据库,操作时需指定要操作的数据库;三、查看数据库对象:1、show databases;查看所有可用的数据...原创 2016-07-24 21:11:35 · 367 阅读 · 0 评论