数据库
文章平均质量分 68
MAX在码字
这里是狐狸!
展开
-
linux基础
序希望你梦到最温柔的月亮,最喜欢的人,和最爱你的我。嗨,这里是狐狸~~今天来给大家分享一下linux基础,让大家简单了解一下linux。操作系统简介????我通过以下四点介绍什么操作系统: 操作系统(Operation System,简称OS)是管理计算机硬件与软件资源的程序,是计算机系统的内核与基石; 操作系统本质上是运行在计算机上的软件程序 ; 为用户提供一个与系统交互的操作界面 ; 操作系统分内核与外壳(我们可以把外壳理解成围绕着内核的应用程原创 2022-01-05 15:01:31 · 466 阅读 · 4 评论 -
教你如何在Linux下安装Qt
前段时间简单的学习了一下Linux下图形编程Qt编程软件,安装方法我来说一下,最令我难忘的是安装Qt编译时间长达漫长两个小时。下面我就来说一下安装Qt的具体步骤:一、下载Qt源码包到本机,然后解压缩#tar zxvf qt-x11-free-3.2.1.tar.gz -C /usr/local //将qt-x11-opensource-src-4.2.3.tar.gz源码包解压缩到/usr/local目录(推荐解压缩至 /usr/local目录)二、进入用户家目录的.bash...原创 2021-10-26 15:10:24 · 5386 阅读 · 0 评论 -
【教程】sqlserver数据迁移到mysql数据库的技巧
我们在做项目开发的时候使用的是SQL Server数据库,但是我们要将存储的数据库调整为MySQL又该怎么办呢?那么下面我们就一起去看看把sqlserver数据迁移到mysql数据库的技巧。一、SQL Server中常用数据类型与MySQL不同的地方二、将SQL Server数据迁移到MySQL需要注意的一些问题1、唯一索引的不同,sql server的唯一索引的字段只能允许存在一个null值,而mysql,一直oracle中唯一索引对应的字段都允许存在多个null值。2、存储过程的语.原创 2021-10-12 18:31:02 · 4184 阅读 · 1 评论 -
干货分享:MySQL数据库常用命令与SQL语句基础理论
显示所有数据库 show databases:列出MySQL数据库管理系统的数据库列表创建数据库 create database [if not exists] dbName:创建名字为dbName指定的数据库删除数据库 drop database dbName:删除dbName指定的数据库统计数据库信息 show table status [{from|in} db_name] [like 'pattern'|where expr] \G:将输出Mysql数据库管理系.原创 2021-04-28 15:09:32 · 267 阅读 · 0 评论 -
MySQL编程笔记:官方文档的使用
一、官方文档的简单介绍:1、Tutorial:将MySQL常用的一些操作使用一个场景串联起来 只是关注里面的灰色部分就可以,按照里面的灰色操作部分顺一遍 ---详细的跟着官方文档的tutorial模块操作一遍对于初学者还是很有必要的2、server Administrator:MySQL管理需要的一些命令、工具、参数等3、SQL Syntax SQL语法,使用最多,特别是DDL语句一定要使用SQL语法进行参考(增删改查)4、Server Option / Variab...原创 2021-04-27 16:23:26 · 238 阅读 · 0 评论 -
MySQL编程笔记:计算打开文件数
有时候,我们会遇到类似下面的报错信息:.....[ERROR] /usr/local/mysql/bin/mysqld: Can't open file: './yejr/access.frm' (errno: 24)[ERROR] /usr/local/mysql/bin/mysqld: Can't open file: './yejr/accesslog.frm' (errno: 24)......[ERROR] Error in accept: Too many open fi.原创 2021-04-24 14:26:06 · 254 阅读 · 0 评论 -
mysql编程笔记:百万级数据插入速度提高方法
当mysql大批量插入数据的时候就会变的非常慢,mysql提高insert into 插入速度的方法有三种:第一种插入提速方法:如果数据库中的数据已经很多(几百万条),那么可以加大mysql配置中的 bulk_insert_buffer_size,这个参数默认为8Mbulk_insert_buffer_size=100M第二种mysql插入提速方法:改写所有 insert into 语句为insertdelayed into这个insert delayed不同之处在于...原创 2021-04-23 14:25:34 · 892 阅读 · 0 评论 -
MySQL编程笔记:数据库和数据库实例
从概念上来说,数据库是文件的集合,是依照某种数据模型组织起来并存放于二级存储器中的数据集合;数据库实例是程序,是位于用户与操作系统之间的一层数据管理软件,用户对数据库数据的任何操作,包括数据库定义、数据查询、数据维护、数据库运行控制等都是在数据库实例下进行的,应用程序只有通过数据库实例才能和数据库打交道。MySQL数据库体系结构,如下所示:MySQL由以下几部分组成:连接池组件管理服务和工具组件SQL接口组件查询分析器组件优化器组件缓存组件插件式存储组件原创 2021-04-22 14:33:49 · 453 阅读 · 0 评论 -
MySQL编程笔记:设置字符集、字符序
一般来说,可以在三个地方进行配置:创建数据库的时候进行配置。mysql server启动的时候进行配置。从源码编译mysql的时候,通过编译参数进行配置方式一:创建数据库的时候进行配置这种方式比较灵活,也比较保险,它不依赖于默认的字符集/字符序。当你创建数据库的时候指定字符集/字符序,后续创建table、column的时候,如果不特殊指定,会继承对应数据库的字符集/字符序。CREATE DATABASE mydb DEFAULT CHARACTER SET utf8 ..原创 2021-04-21 14:08:53 · 303 阅读 · 0 评论 -
MySQL编程入门 | 设置安全密码
密码的安全体现在以下两个方面:设置安全的密码,建议使用6位以上字母、数字、下划线和一些特殊字符组合的而成的字符串;使用上的安全,使用密码期间尽量保证使用过程安全,不会被别人窃取。第一点就不用说了,越长越复杂越没有规律的密码越安全。对于第二点,可以总结一下,在日常工作中,使用密码一般是采用以下几种方式。1.直接将密码写在命令行中。1mysql -uroot -p1232.交互式方式输入密码。1mysql -uroot -p3.将用户名和密码写在配置文件里面,连接的时候自动读原创 2021-04-20 19:23:18 · 286 阅读 · 0 评论 -
MySQL编程笔记:连接查询
连接是区别关系与非关系系统的最重要的标志。通过连接运算符可以实现多个表查询。连接查询主要包括内连接、外连接等。假设有Student和Grade两个表如下:| sID | sName | sDept || gID | gCourse | gScore ||1|Paul|CS| |1|Math|87||2|Oliver|MS| |2|English|95||3|Jack|SE| |3|Physics|76||4|Robin|CS| |7|Phil...原创 2021-04-17 16:09:18 · 235 阅读 · 0 评论 -
MySQL编程笔记:子查询
子查询子查询是指一个查询语句嵌套在另一个查询语句内部的查询。在 SELECT 子句中先计算子查询,子查询结果作为外层另一个查询的过滤条件。子查询中常用的操作符有ANY、SOME、ALL、EXISTS、IN,也可以使用比较运算符。子查询可以添加到 SELECT、UPDATE 和 DELETE 语句中,而且可以进行多层嵌套。在条件表达式中产生标量的子查询SELECT * FROM scoreWHERE id = (SELECT event_idFROM eventWHERE d原创 2021-04-16 18:54:54 · 1276 阅读 · 0 评论 -
mysql编程日记:导入、出某表数据
登陆mysql后,输入:show variables like '%secure%';显示的secure_file_priv如果value值为null,则为禁止,如果有文件夹目录,则只允许改目录下文件(测试子目录也不行),如果为空,则不限制目录;修改配置可修改mysql配置文件my.cnf,查看是否有secure_file_priv =这样一行内容,如果没有,则手动添加,secure_file_priv = /home表示限制为/home文件夹secure_file_priv原创 2021-04-14 18:58:55 · 629 阅读 · 0 评论 -
数据库教程:mysql对用户的操作
修改用户名(用户重命名)在MySQL中,我们可以使用RENAME USER语句修改一个或多个已经存在的用户账号。语法:RENAME USER<旧用户>TO<新用户>其中:<旧用户>:系统中已经存在的 MySQL 用户账号。<新用户>:新的 MySQL 用户账号。使用 RENAME USER 语句时应注意以下几点:RENAME USER 语句用于对原有的 MySQL 用户进行重命名。若系统中旧账户不存在或者新账户已存在,该语...原创 2021-04-12 19:31:39 · 225 阅读 · 0 评论 -
不是吧不是吧,MySQL服务无法启动?看这里的万能解决法!
MySQL启动报错window10上安装了MySQL之前使用都是执行netstartmysql启动,执行netstopmysql关闭。某天开始启动报错“MySQL服务无法启动”,“请键入NETHELPMSG3523以获得更多的帮助”。如果再执行启动命令会报“服务正在启动或停止中,请稍候片刻后再试一次”。解决方案这种问题网上有修改配置文件my.ini 删data目录下文件 重装MySQL等多种解决方法。前两种方案没能解决我的问题。至于重装MySQL,据我所知,已经安原创 2021-04-02 14:44:56 · 631 阅读 · 0 评论 -
MySQL编程日记:导入数据
MySQL中可以使用两种简单的方式来导入MySQL导出的数据。使用 LOAD DATA 导入数据MySQL 中提供了LOAD DATA INFILE语句来插入数据。 以下实例中将从当前目录中读取文件 dump.txt ,将该文件中的数据插入到当前数据库的 mytbl 表中。mysql> LOAD DATA LOCAL INFILE 'dump.txt' INTO TABLE mytbl;如果指定LOCAL关键词,则表明从客户主机上按路径读取文件。如果没有指定,则文件在服务器上按路...原创 2021-03-30 18:49:00 · 232 阅读 · 0 评论 -
MySQL编程日记:远程访问及中文乱码有关问题
MySQL 远程访问问题1.sudo vim mysql.conf.d/mysqld.cnf 注掉 #bind-address = 127.0.0.12.登陆进入mysql-server:/etc/mysql$ mysql -uroot -p Enter password: mysql> use mysql mysql> update user set Host = '%' where user = 'root'; GRANT ALL PRIVILEGES ...原创 2021-03-29 15:16:37 · 191 阅读 · 0 评论 -
编程学习:MYSQL数据库编码原理
在mysql编码面有两个概念,大家都不需要知道的。一个是 字符编码“character set”和校验编码“collations”。下面我们来说说这个两个东西。1、 什么是字符集“character set”数据库都有字符集,字符集是一个非常大的概念,字符集,规定了不同字符的编码方式,一个字符集就是一组符号和编码。举个例子,我们常说的“ASCII字符集”,就是包括数字、大小写字母、分号、换行等的符合的集合,编码方式按照一定的规律和要求进行排序的编码集合。如字母A的编码是65。ASCII只..原创 2021-03-25 18:49:38 · 324 阅读 · 0 评论 -
当磁盘空间爆满后,MySQL会发生什么事呢?又应该怎么应对?
当磁盘空间写满了之后,MySQL是无法再写入任何数据的,包括对表数据的写入,以及binlog、binlog-index等文件。当然了,因为InnoDB是可以把脏数据先放在内存里,所以不会立刻表现出来无法写入,除非开启了binlog,写入请求才会被阻塞。当MySQL检测到磁盘空间满了,它会:每分钟:检查空间是否得到释放,以便写入新数据。当发现有剩余空间了,就会继续写入数据,一切照旧。每十分钟:如果还是发现没剩余空间,则会在日志中写入一条记录,报告磁盘空间满(这时候只写入几个字节还是够的)。..原创 2021-03-23 15:57:44 · 514 阅读 · 0 评论 -
黑客那些事:SQL注入是什么?MySQL如何防范?
关于SQL注入 互联网很危险,信息及数据安全很重要,SQL注入是最常见的入侵手段之一,其技术门槛低、成本低、收益大,颇受各层次的黑客们所青睐。 一般来说,SQL注入的手法是利用各种机会将恶意SQL代码添加到程序参数中,并最终被服务器端执行,造成不良后果。 例如,我们访问接口网址?userid=123 来根据userid获取用户信息,假设程序中是这么处理的: $sql = “SELECT * FROM user WHERE userid =$_GET[userid]“;...原创 2021-03-22 14:28:36 · 253 阅读 · 0 评论 -
编程学习:用SQL命令查看MySQL数据库大小
要想知道每个数据库的大小的话,步骤如下:1、进入information_schema 数据库(存放了其他的数据库的信息)use information_schema;2、查询所有数据的大小:select concat(round(sum(data_length/1024/1024),2),'MB') as data from tables;3、查看指定数据库的大小:比如查看数据库home的大小select concat(round(sum(data_length/1024/1..原创 2021-03-20 14:55:34 · 222 阅读 · 0 评论 -
MySQL学习日记:在存储时间日期时,我们应该使用哪种类型?
构建数据库写程序避免不了使用日期和时间,对于数据库来说,有多种日期时间字段可供选择,如 timestamp 和 datetime 以及使用 int 来存储 unix timestamp。不仅新手,包括一些有经验的程序员还是比较迷茫,究竟我该用哪种类型来存储日期时间呢?那我们就一步一步来分析他们的特点,这样我们根据自己的需求选择合适的字段类型来存储 (优点和缺点是比较出来的 , 跟父母从小喜欢拿邻居小孩子跟自己比一样的)datetime 和 timestampdatetime 更像日历上...原创 2021-03-19 13:37:37 · 879 阅读 · 0 评论 -
【数据库教程】Mysql事务隔离解析
事务的介绍事务就是一组原子性的sql查询,或者说是一个独立的工作单元。简而言之,事务内的语句要么全部执行成功,要么全部执行失败。在Mysql中,事务支持是在引擎层实现的,但并不是所有的Mysql引擎都支持事务,比如MyISAM引擎就不支持事务,这也是MyISAM被InnoDB取代的重要原因之一。提到事务,我们肯定会想到ACID:原子性(Atomicity) 一致性(Consistency) 隔离性(Isolation) 持久性(Durability)隔离级别当数据库中有多个事务同..原创 2021-03-18 14:05:07 · 1460 阅读 · 0 评论 -
教程:linux系统—mysql常用备份命令
1、备份db1数据库中所有表(包括表结构和数据,不包括创建db1数据库的语句)mysqldump -h192.168.1.10 -uroot -p db1 > xxx.sql2、备份db1数据库中所有表(包括表结构和数据,包括创建db1数据库的语句)mysqldump -h192.168.1.10 -uroot -p --databases db1 > xxx.sql3、备份db1数据库中t1、t2、t3表(包括表结构和数据,不包括创建db1数据库的语句)mysqldum..原创 2021-03-15 13:57:11 · 1601 阅读 · 0 评论 -
数据库教程:mysql语句书写顺序和执行顺序的差异
mysql语句的书写顺序和执行顺序有很大差异。书写顺序,mysql的一般书写顺写为:select<要返回的数据列>from<表名>joinonwheregroup by<分组条件>having<分组后的筛选条件>order by<排序条件>limit<行数限制>然而其执行顺序却是:from<表名> # 笛卡尔积on<筛选条件&.原创 2021-03-13 16:13:42 · 265 阅读 · 0 评论 -
【教程】MySQL表锁定
在本教程中,你将学习如何使用MySQL锁来协调会话之间的表访问。MySQL允许客户端会话明确获取表锁,以防止其他会话在特定时间段内访问表。客户端会话只能为自己获取或释放表锁。它不能获取或释放其他会话的表锁。在详细介绍之前,我们将创建一个名为sampledb的示例数据库,其中包含一个简单的tbl表来模拟练习表锁定语句。CREATE DATABASE IF NOT EXISTS testdb; USE testdb; CREATE TABLE tbl ( id int(11) N...原创 2021-03-09 13:48:50 · 114 阅读 · 0 评论 -
忘记MySQL的root密码了?别怕,教你如何重置密码!
1.修改配置文件 my.cnf,在配置文件 [mysqld] 下添加skip-grant-tables,重启MySQL服务即可免密码登录其中 --skip-grant-tables 选项的意思是启动 MySQL 服务的时候跳过权限表认证。 启动后,连接到 MySQL 的 root 将不需要口令(危险)。[mysqld]skip-grant-tables2.用空密码的 root 用户连接到 MySQL,并且更改 root 口令:[root@iZ235wguph2Z www]# m...原创 2021-03-05 19:41:50 · 225 阅读 · 0 评论 -
编程学习 | mysql 编码设置命令
查看编码:show variables like 'character%';或status:修改:set 变量=置set character_set_client = utf8 ;mysql修改root密码方法一:(适用于管理员或者有全局权限的用户重设其它用户的密码)进入命令行模式mysql -u root mysqlmysql> update user set password=password("new password") where user='nam..转载 2021-03-01 16:42:23 · 109 阅读 · 0 评论 -
编程学习 | MySQL如何导出数据
MySQL中可以使用SELECT...INTO OUTFILE语句来简单的导出数据到文本文件上。以下实例中我们将数据表 tutorials_tbl 数据导出到 /tmp/tutorials.txt 文件中:mysql> SELECT * FROM tutorials_tbl -> INTO OUTFILE '/tmp/tutorials.txt';你可以通过命令选项来设置数据输出的指定格式,以下实例为导出 CSV 格式:mysql> SELECT * FR...原创 2021-02-27 15:11:32 · 310 阅读 · 0 评论 -
从删库到跑路?别怕,这里教你一招:MySQL误删数据救命指南
预防误操作导致文件/数据丢失不成熟的建议:欲删除文件时,将rm命令改成mv,可在系统层面将rm命令做个alias(或参考Windows / Mac OSX做法,删除文件时先进回收站)。删除数据库、表时,不要用drop命令,而是rename到一个专用归档库里;删除表中数据时,不要直接用delete或truncate命令,尤其是truncate命令,目前不支持事务,无法回滚。用delete命令删除数据时,应当先显式开启事务,这样误操作时,还有机会进行回滚。要大批量删除数据时,可以将这些数原创 2021-02-21 15:06:37 · 229 阅读 · 0 评论 -
新手编程之旅:MySQL中的关键点!一文带你搞懂它
Mysql的使用非常普遍,跟mysql有关的话题也非常多,如性能优化、高可用性、强一致性、安全、备份、集群、横向扩展、纵向扩展、负载均衡、读写分离等。要想掌握其中的精髓,可得花费不少功力,虽然目前流行的mysql替代方案有很多,可是从最小成本最容易维护的角度而言,mysql还是首选。下面从应用场景的角度切入,对mysql的技术点进行组织,写一份知识图谱,方便进行更深入的学习和总结。单Master单Master的情况是普遍存在的,对于很多个人站点、初创公司、小型内部系统,考虑到成本、更原创 2021-02-20 14:04:21 · 116 阅读 · 0 评论 -
新手编程之旅:零基础如何学习MySQL?
SQL如何学习?SQL入门有一本常常提起的书《SQL in 10minutes》这本可以看看。常年amazon销量前列。或者动物社的,learning SQL,也是很好的。你需要在实际操作中累积经验,因为任何非实际项目你无法真实碰触到实际数据库结构,学习用的都非常简单,不会遇到复杂情况,而SQL使用的水平之一即是写出高效的SQL。条条大路通罗马,在SQL更是如此,有时候你需要用很多union才能解决问题,别人一个select就能解决,这主要就是经验。这一块是无法通过教与学了解的,没.原创 2021-02-19 14:11:49 · 629 阅读 · 0 评论 -
数据库编程笔记:新手高效地学习MySQL?仅仅只需三步!
从初学者的角度来说,学习Mysql并不是一个复杂的过程,Mysql数据库本身还是非常容易上手的,下面简单的聊一下应该如何快速入门Mysql。mysql 查询 ,插入,删除mysql增删改查可以说是mysql比较重要的点了,那么如何学习?我觉得首先得从最基础的mysql的查询,插入和删除来学习。在我看来高效学习的方法有:看书:《mysql从入门到精通》,《菜鸟学习mysql》等书籍里面都有如何从安装到学会如何查询,开始学的时候可以边写代码边看对应的文档,这样理解起来可能更方便,更顺..原创 2021-02-05 20:20:19 · 200 阅读 · 0 评论 -
知识分享:SQL语句中where条件后面的1=1是
这段代码应该是由程序中生成的,where条件中 1=1 之后的条件是通过 if 块动态变化的。例如: String sql="select * from table_name where 1=1";if( conditon 1) { sql=sql+" and var2=value2";}if(conditon 2) { sql=sql+" and var3=value3";}where 1=1 是为了避免where 关键字后面的第一个词直接就是 “and”...原创 2021-02-04 21:39:35 · 188 阅读 · 0 评论 -
【教程】SQL FORMAT() 函数
FORMAT() 函数FORMAT() 函数用于对字段的显示进行格式化。SQL FORMAT() 语法SELECT FORMAT(column_name,format) FROM table_name;参数描述column_name必需。要格式化的字段。format必需。规定格式。演示数据库在本教程中,我们将使用众所周知的 Northwind 样本数据库。下面是选自 "Products" 表的数据:ProductIDProductName...原创 2021-02-03 22:03:55 · 3557 阅读 · 0 评论 -
【编程知识】常被忽视的 SQL 错误用法
1、LIMIT 语句分页查询是最常用的场景之一,但也通常也是最容易出问题的地方。比如对于下面简单的语句,一般 DBA 想到的办法是在 type, name, create_time 字段上加组合索引。这样条件排序都能有效的利用到索引,性能迅速提升。SELECT * FROM operation WHERE type = 'SQLStats' AND name = 'SlowLog' ORDER BY create_time LIMIT 1000, 10;好吧,可能90%以...原创 2021-01-27 14:15:58 · 183 阅读 · 0 评论 -
今日份知识分享:SQL 通配符
通配符可用于替代字符串中的任何其他字符。在 SQL 中,通配符与 SQL LIKE 操作符一起使用。SQL 通配符用于搜索表中的数据。在 SQL 中,可使用一下通配符:通配符描述% 替代 0 个或多个字符_替代一个字符[charlist] 字符列中的任何单一字符[^charlist]...原创 2021-01-08 13:53:38 · 184 阅读 · 0 评论 -
MySQL 处理重复数据
有些 MySQL 数据表中可能存在重复的记录,有些情况我们允许重复数据的存在,但有时候我们也需要删除这些重复的数据。下面将为大家介绍如何防止数据表出现重复数据及如何删除数据表中的重复数据。防止表中出现重复数据你可以在 MySQL 数据表中设置指定的字段为PRIMARY KEY(主键)或者UNIQUE(唯一)索引来保证数据的唯一性。让我们尝试一个实例:下表中无索引及主键,所以该表允许出现多条重复记录。CREATE TABLE person_tbl ( first_n...原创 2021-01-05 14:12:36 · 147 阅读 · 0 评论 -
MySQL中最实用的SQL语句
前言:在编写SQL时,我们经常灵活地使用一些SQL语句编写语句,从而可以大大简化程序逻辑。减少程序与数据库之间的交互次数,这有利于数据库的高可用性。实用SQL语句:1.插入或更换如果我们要插入新记录(INSERT),但是如果该记录已经存在,请先删除原始记录,然后再插入新记录。场景示例:需要使用此表中存储的每个客户的最新交易订单信息,以确保不重复输入单个用户的数据,执行效率最高,与数据库的交互最少,并且数据库是高度可用的。此时,可以用“ REPLACE INTO”语句,这样就不必先查询,然原创 2021-01-03 15:14:30 · 125 阅读 · 0 评论 -
想成为高级程序员?最受欢迎的十大数据库,全给你了!
任何软件开发都必须有一个数据库,而选择哪个数据库是软件体系结构的主要要求之一。作为程序员,我们对数据库有很多选择。我们主要有两种类型的数据库。因此,让我们从最受欢迎的数据库开始……SQL–示例:Oracle,MySQL,Microsoft SQL Server,PostgreSQLNoSQL–示例:MongoDB,Redis如上所述,SQL主要具有关系数据库,而NoSQL不仅意味着SQL数据库。因此,现在我们可以按每个数据库的优缺点浏览前十大数据库。这里我们列出了2020年的数据库。..原创 2020-12-31 18:50:20 · 828 阅读 · 0 评论