
MYSQL
文章平均质量分 77
Emily-C
为框架而生,为框架而死,为编程奋斗一辈子
展开
-
MySQL如何查看数据库的安装路径?教你两招
我们可以通过mysql命令查看mysql的安装路径:# 以下两个sql任意一个可查询select@@basedir asbasepath fromdual ;show variables like'%basedir%';上面可以看到基础的安装路径,查看数据库data的路径怎么看,很简单,把上面的参数变量换成datadir即可:# 以下查询任意一个均可select@@datadir asdatapath fromdual ;show variables like'%dat原创 2021-03-30 14:40:35 · 7724 阅读 · 0 评论 -
MySQL8.023安装过程图文详解(首次安装)
首先下载安装包mysql官网下载地址,mysql是开源的,所以直接下载就行了。这是下载步骤:然后选择:因为个人使用原因,我选择了这个:下载之后,解压下载得到的安装包放在自己喜欢的位置,然后设置环境变量首先下载安装包mysql官网下载地址,mysql是开源的,所以直接下载就行了。这是下载步骤:然后选择:因为个人使用原因,我选择了这个:下载之后,解压下载得到的安装包放在自己喜欢的位置,然后设置环境变量:我是win10系统,就是此电脑-属性-高级系统设置-环境变量:在系统变原创 2021-03-29 14:50:52 · 952 阅读 · 0 评论 -
MySQL中的sum函数用法实例详解
今天分享一下mysql中的sum函数使用。该函数已经成为大家操作mysql数据库中时常用到的一个函数,这个函数统计满足条件行中指定列的和,想必肯定大家都知道了,本身就没什么讲头了,这篇文章主要是通过几个小案例深入了解一下该函数,以及在做mysql查询时如何使用sum函数做优化。语法分析sum([distinct] expr) [over_clause]returns the sum of expr. if the return set has no rows, sum() returns nu原创 2021-03-27 19:12:00 · 22058 阅读 · 0 评论 -
一文让你彻底搞懂 MySQL 的几种锁
文章来源:51CTO博客,作者:青苔初生一文读懂所有锁,了解他们的优缺点和使用场景。表级锁与行级锁表级锁:table-level locking,锁住整个表。开销小,加锁快。不会死锁(一次性加载所需的所有表)。锁粒度大,发生锁冲突概率大,并发效率低。适合查询。行级锁:row-level loking,锁住一行记录。开销大,加锁慢。会死锁。锁粒度小,发生所冲突概率小,并发效率高。适合并发写,事务控制。并不是直接丢记录行加锁,而是对行对应的索...原创 2021-03-26 14:29:26 · 455 阅读 · 0 评论 -
注意!监控MySQL服务是否正常,懂这4种方法就可以了
文章来源:http://blog.chinaunix.net/uid-90618-id-5846539.html?utm_source=tuicool&utm_medium=referral监控MySQL服务是否正常,通常的思路为:检查3306端口是否启动,ps查看mysqld进程是否启动,命令行登录mysql执行语句返回结果,php或jsp程序检测(需要开发人员开发程序)等等;方法1:监听3306端口方法2:查看mysqld进程注意注意:如果使用进程过滤的话,脚本名称如果里.原创 2021-03-25 16:11:22 · 1814 阅读 · 0 评论 -
MySQL入门到精通:MySQL 插入数据
文章转载:菜鸟教程MySQL 插入数据MySQL 表中使用 INSERT INTO SQL语句来插入数据。你可以通过 mysql> 命令提示窗口中向数据表中插入数据,或者通过PHP脚本来插入数据。语法以下为向MySQL数据表插入数据通用的 INSERT INTO SQL语法:INSERT INTO table_name ( field1, field2,...fieldN ) VALUES ...原创 2021-03-24 14:01:24 · 635 阅读 · 0 评论 -
MySQL数据快速恢复指南:误删数据怎么办?教你这五招!
作者:一个人的孤独自白cnblogs.com/-mrl/p/9959365.html相信后端研发的同学在开发过程经常会遇到产品临时修改线上数据的需求,如果手法很稳那么很庆幸可以很快完成任务,很不幸某一天突然手一抖把表里的数据修改错误或者误删了,这个时候你会发现各种问题反馈接踵而来。如果身边有BDA或者有这方面经验的同事那么可以很快解决这个问题,如果没有那么希望这篇文章可以帮到你。第一步:保证mysql已经开启binlog,查看命令:查看binklog是否开启showvariab..转载 2021-03-23 19:01:49 · 1130 阅读 · 0 评论 -
MySQL入门到精通:MySQL 删除数据表
文章转载:菜鸟教程MySQL 删除数据表MySQL中删除数据表是非常容易操作的,但是你在进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失。语法以下为删除MySQL数据表的通用语法:DROP TABLE table_name ;在命令提示窗口中删除数据表在mysql>命令提示窗口中删除数据表SQL语句为DROP TABLE:实例以下实例删除了数据表runoob_tbl:root@host# mysql -u root -pEnter...原创 2021-03-23 14:35:57 · 394 阅读 · 0 评论 -
这14个超实用的数据库面试题,你必须掌握(附答案)
来自:掘金,作者:图灵程序员链接:https://juejin.im/post/6869271520175194126一、为什么使用数据索引能提高效率数据索引的存储是 有序的在有序的情况下, 通过索引查询一个数据是无需遍历索引记录的极端情况下,数据索引的查询效率为二分法查询效率,趋近于log2(N)二、B+树索引和哈希索引的区别B+树是一个平衡的多叉树,从根节点到每个叶子节点的高度差值不超过1,而且同层级的节点间有指针相互链接,是有序的,如下图:哈希索引就是采用一定的.原创 2021-03-22 18:59:34 · 903 阅读 · 0 评论 -
MySQL入门到精通:MySQL 创建数据表
文章来源:菜鸟教程创建MySQL数据表需要以下信息:表名表字段名定义每个表字段语法以下为创建MySQL数据表的SQL通用语法:CREATE TABLE table_name (column_name column_type);以下例子中我们将在 RUNOOB 数据库中创建数据表runoob_tbl:CREATE TABLE IF NOT EXISTS `runoob_tbl`( `runoob_id` INT UNSIGNED AUTO_INCREMENT,..原创 2021-03-20 14:18:18 · 230 阅读 · 0 评论 -
shell 遍历mysql查询结果的四种方式,建议收藏
# 定义数据库连接信息HOST_NAME=localhostDB_NAME=simaUSER_NAME=sudaPASSWD='111111'# -s 去掉表头MYSQL_ETL="mysql-h $HOST_NAME -P4045 -D$DB_NAME -u$USER_NAME -p$PASSWD -s -e"# 这里是从mysql里查询出来的结果,然后遍历ssql="SELECT hive_table from sima_sports_event_hive_colum..原创 2021-03-19 18:59:43 · 8711 阅读 · 0 评论 -
MySQL入门到精通:MySQL 数据类型
文章来源:菜鸟教程MySQL中定义数据字段的类型对你数据库的优化是非常重要的。MySQL支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。数值类型MySQL支持所有标准SQL数值数据类型。这些类型包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL和NUMERIC),以及近似数值数据类型(FLOAT、REAL和DOUBLE PRECISION)。关键字INT是INTEGER的同义词,关键字DEC是DECIMAL的同义词。BIT数据类型保存.原创 2021-03-19 13:55:20 · 181 阅读 · 0 评论 -
MySQL入门到精通:MySQL 选择数据库
文章来源:菜鸟教程在你连接到 MySQL 数据库后,可能有多个可以操作的数据库,所以你需要选择你要操作的数据库。从命令提示窗口中选择MySQL数据库在 mysql> 提示窗口中可以很简单的选择特定的数据库。你可以使用SQL命令来选择指定的数据库。实例以下实例选取了数据库 RUNOOB:[root@host]# mysql -u root -pEnter password:******mysql> use RUNOOB;Database changed.原创 2021-03-17 16:01:26 · 297 阅读 · 0 评论 -
血一般的教训,请慎用Insert Into Select
血一般的教训,请慎用 insert into select。同事应用之后,导致公司损失了近 10w 元,最终被公司开除。事情的起因公司的交易量比较大,使用的数据库是 MySQL,每天的增量差不多在百万左右,公司并没有分库分表,所以想维持这个表的性能只能考虑做数据迁移。同事李某接到了这个任务,于是他想出了这两个方案:先通过程序查询出来,然后插入历史表,再删除原表。使用 insert into select 让数据库 IO 来完成所有操作。第一个方案使用的时候发现一次性全部加载,系统转载 2021-03-04 19:38:56 · 278 阅读 · 1 评论 -
MySQL入门到精通:MySQL 删除数据库
使用 mysqladmin 删除数据库使用普通用户登陆mysql服务器,你可能需要特定的权限来创建或者删除 MySQL 数据库。所以我们这边使用root用户登录,root用户拥有最高权限,可以使用 mysql mysqladmin 命令来创建数据库。在删除数据库过程中,务必要十分谨慎,因为在执行删除命令后,所有数据将会消失。以下实例删除数据库TUTORIALS(该数据库在前一章节已创建):[root@host]# mysqladmin -u root -p drop TUTORIALS原创 2021-03-04 13:43:59 · 201 阅读 · 1 评论 -
用了才知道,这4种数据库设计工具太秀了!
众所周知,良好的数据库设计能够大幅减少后期的运维工作,同时也能最大程度地减少软件项目出错的可能。由于我们所面临的真实项目需求往往五花八门,因此需要找到合适的设计工具,来实现事半功倍的效果。本文将从如下用户界面、可支持的数据库、数据工具、售价四个方面和您一起比较四种优秀数据库设计工具的各自优缺点。1.DbSchema官网:https://dbschema.com/DbSchema是一种可用于复杂数据库设计和管理的可视化工具。该工具已经集成在大多数主流操作系统之中。用户界面Db.转载 2021-03-03 14:12:17 · 1298 阅读 · 0 评论 -
不会MySQL索引,面试官让回家等通知!
你是不是对于 MySQL 索引的知识点一直都像大杂烩,好像什么都知道,如果进行深究的话可能一个也答不上来。假如你去面试,面试官让你聊一下对索引的理解,然而你对索引的理解仅限于,检索数据就是快,是一种数据结构这个层面,那你就只能回家等通知了。为了避免这种尴尬的事情发生,小编将索引的内容在自己理解的范围内进行了整理,如有整理不全面的地方可以在评论区进行补充和提建议。MySQL 索引到底是什么相信大多数伙伴都买过技术类的书籍,看完没看完不知道,但是目录肯定看的次数最多。看目录有没有自己目前转载 2021-03-02 20:35:23 · 201 阅读 · 0 评论 -
MySQL入门到精通:关于 MySQL管理,你要知道这些...
启动及关闭 MySQL 服务器首先,我们需要通过以下命令来检查MySQL服务器是否启动:ps -ef | grep mysqld如果MySql已经启动,以上命令将输出mysql进程列表, 如果mysql未启动,你可以使用以下命令来启动mysql服务器:root@host# cd /usr/bin./mysqld_safe &如果你想关闭目前运行的 MySQL 服务器, 你可以执行以下命令:root@host# cd /usr/bin./mysqladmin原创 2021-03-02 14:09:42 · 169 阅读 · 0 评论 -
为什么你使用MySQL查询很慢?聪明的人都知道这几个解决技巧
在做开发的朋友特别是和mysql有接触的朋友会碰到有时mysql查询很慢,当然我指的是大数据量百万千万级了,不是几十条了,解决查询慢的原因会经常发现开发人员查一下没用索引的语句或者没有limit n的语句,这些没语句会对数据库造成很大的影响,例如一个几千万条记录的大表要全部扫描,或者是不停的做filesort,对数据库和服务器造成io影响等。这是镜像库上面的情况。而到了线上库,除了出现没有索引的语句,没有用limit的语句,还多了一个情况,mysql连接数过多的问题。说到这里,先来看看以前我们的原创 2021-03-01 19:43:09 · 770 阅读 · 0 评论 -
MySQL入门到精通:学好MySQL第一步,从安装MySQL开始
所有平台的Mysql下载地址为: MySQL 下载. 挑选你需要的MySQL Community Server版本及对应的平台。Linux/UNIX上安装MysqlLinux平台上推荐使用RPM包来安装Mysql,MySQL AB提供了以下RPM包的下载地址:MySQL- MySQL服务器。你需要该选项,除非你只想连接运行在另一台机器上的MySQL服务器。MySQL-client- MySQL 客户端程序,用于连接并操作Mysql服务器。MySQL-devel- 库和包含文...原创 2021-03-01 15:37:06 · 306 阅读 · 0 评论 -
憋不住了!这8 个 MySQL 陷阱,我不得不说一下...
Mysql安装简单,速度较快,功能丰富。另外它还是开源运动的标杆,它的伟大成就向我们展示了一个成功的公司是可以建立在开源代码之上的。然而用过mysql的人都曾对着显示器挥舞过拳头。但你不可能发明一种每秒能保存成千上万行互联网数据,并且一点错误都没有的技术吧。为了在这个夏天躁起来,我们列举了8个抱怨开源关系型数据库的理由。下面列举的理由中不仅限于 MySQL,有一些是针对关系型数据库的。如果我们没有理清楚关系型数据库和 MySQL,我们将会永远陷入90年代的思想上。我们需要推倒然后重建这些。或者我们转原创 2021-02-25 13:51:33 · 257 阅读 · 0 评论 -
MySQL常见的4种数据类型,一篇文章带你搞懂!
数据类型:定义列中可以存储什么数据以及该数据实际怎样存储的基本规则。数据类型用于以下目的:1、允许限制可存储在列中的数据。如:数值数据类型列只能接受数值。2、允许在内部更有效地存储数据。如:用比文本串更简洁的格式存储数值和日期时间值。3、允许变换排序顺序。如:数据都作为串处理,则1位于10前,10位于2前(串以字典顺序排序,从左边开始比较,一次一个字符);作为数值数据类型,数值才能正确排序。一、串数据类型最常用的数据类型,存储串,如名字、地址、电话号码等。两种基本的串类型:定长串原创 2021-02-23 18:57:37 · 1750 阅读 · 0 评论 -
牛年伊始,你的mysql密码安全吗?
前言:新年伊始,你的数据库是不是该巡检了?一般巡检都会关心密码安全问题,比如密码复杂度设置,是否有定期修改等。特别是进行等保评测时,评测机构会要求具备密码安全策略。其实 MySQL 系统本身可以设置密码复杂度及自动过期策略的,可能比较少用,大多数同学并未详细去了解。本篇文章我们一起来学习下如何设置数据库账号密码复杂度及自动过期策略。 1.密码复杂度策略设置MySQL 系统自带有 validate_password 插件,此插件可以验证密码强度,未达到规定强度的密码则不允许被设置。My...原创 2021-02-21 19:10:23 · 415 阅读 · 0 评论 -
MySql数据在磁盘上到底是怎么存储的?被存储的数据怎么查找?
本文来自作者投稿,原作者:zyz1992关于MySql数据库,相信很多人都不陌生,这是当今最常用的一种关系型数据库,关于MySql的知识也是很丰富的。那么,不知道大家有没有想过这样的问题:MySql中的数据是存在哪的?又是如何存储的呢?本文就来深入分析一下这些问题。文章内容很长,建议收藏,建议大家静下心来仔细阅读,一定会有收获!Innodb的存储格式我们知道,关于Mysql这种关系型数据库,里面保存的数据最终都是要持久化到磁盘文件上面的。磁盘文件里存放的物理格式就是数据页(关于数.转载 2021-02-19 19:46:40 · 1097 阅读 · 0 评论 -
哼!MySQL 8.0不讲武德,给我挖坑!
你在使用 MySQL 的 Group by 分组时,是否发现分组后的数据都是有序的?其实,在 MySQL 8.0 ,优化器在分组查询时都会进行隐式排序。那既然隐式排序为什么还要保留 Order by?隐式排序的目的又是什么呢?让我们一起来看看。背景小故事年前我们换了领导,俗话说,新官上任总爱干傻事儿...这不,领导要拥抱新事物,要求我们更新项目 MySQL 版本,从 MySQL 5.7 更新到 MySQL 8.0。不知是 MySQL 5.7 不香了,还是领导你眼光高了?我把这个任务交给原创 2021-02-08 20:32:01 · 344 阅读 · 0 评论 -
MySQL字符串是怎么截取substring函数的?
感觉MySQL的字符串函数截取字符,比用程序截取(如PHP或JAVA)来得强大,所以在这里做一个记录,希望对大家有用。函数:1、从左开始截取字符串left(str, length)说明:left(被截取字段,截取长度)例:select left(content,200) as abstract from my_content_t2、从右开始截取字符串right(str, length)说明:right(被截取字段,截取长度)例:select r...原创 2020-12-26 19:00:21 · 179 阅读 · 0 评论 -
MySQL怎么实现预编译?一文教你搞懂!
1、预编译的好处大家平时都使用过JDBC中的PreparedStatement接口,它有预编译功能。什么是预编译功能呢?它有什么好处呢?当客户发送一条SQL语句给服务器后,服务器总是需要校验SQL语句的语法格式是否正确,然后把SQL语句编译成可执行的函数,最后才是执行SQL语句。其中校验语法,和编译所花的时间可能比执行SQL语句花的时间还要多。如果我们需要执行多次insert语句,但只是每次插入的值不同,MySQL服务器也是需要每次都去校验SQL语句的语法格式,以及编译,这就浪费了太多的时间。如原创 2020-12-25 18:37:43 · 412 阅读 · 0 评论 -
MySQL中 replace与replace into的区别与使用方法(干货分享)
Mysql replace与replace into都是经常会用到的功能;replace其实是做了一次update操作,而不是先delete再insert;而replace into其实与insert into很相像,但对于replace into,假如表中的一个旧记录与一个用于PRIMARY KEY或一个UNIQUE索引的新记录具有相同的值,则在新记录被插入之前,旧记录被删除。replace是mysql 里面处理字符串比较常用的函数,可以替换字符串中的内容。类似的处理字符串的还有trim截取操作,这里转载 2020-12-24 16:56:15 · 368 阅读 · 2 评论 -
在Linux下,如何实现C++操作Mysql数据库?
想用C++写项目,数据库是必须的,所以这两天学了一下C++操作MySQL数据库的方法。也没有什么教程,就是在网上搜的知识,下面汇总一下。连接MySQL数据库有两种方法:第一种是使用ADO连接,不过这种只适合Windows平台;第二种是使用MySQL自己的C API函数连接数据库。我是在Linux平台下开发,所以就采用第二种方法,有很多Api函数,但是常用的就几个,我也是就用到其中的几个。API函数1.mysql_real_connect()连接一个mysql服务器MYSQL *m.原创 2020-12-24 14:49:53 · 350 阅读 · 0 评论 -
在C++连接mysql的路上,你掉进过哪些坑?
对于C++连接mysql,采用的是通过mysql自己的API函数进行连接。下面小编将介绍C++与mysql连接遇到的一些问题。1、使用API的方式连接,需要加载mysql的头文件和lib文件。在VS2010的附加包含目录中添加\MySQL\MySQL Server 5.1\include。在安装MySql的目录下找。 把libmysql.dll和libmysql.lib文件拷贝到所建的工程目录下。然后在头文件里包含以下内容://mysql所需的头文件和库文件#include "w.原创 2020-12-23 16:41:55 · 478 阅读 · 0 评论 -
忘记 root 密码怎么办?教你4种使用MySQL方式修改密码!(超实用)
前言:在日常使用数据库的过程中,难免会遇到需要修改账号密码的情景,比如密码太简单需要修改、密码过期需要修改、忘记密码需要修改等。本篇文章将会介绍需要修改密码的场景及修改密码的几种方式。1.忘记 root 密码忘记 root 密码的场景还是比较常见的,特别是自己搭的测试环境经过好久没用过时,很容易记不得当时设置的密码。这个时候一般常用的方法是跳过权限验证,然后更改 root 密码,之后再启用权限验证。以 MySQL 5.7 版本为例简单讲下主要过程:首先修改配置文件,在[mysqld.转载 2020-12-22 14:30:28 · 738 阅读 · 0 评论