mysql
冰冷的希望
坚持记录,相互帮助,一起进步
展开
-
【mysql】视图的创建、修改、删除、查看所有视图、不能修改视图的情况
视图的使用场景很多,比如说,你需要给某个用户提供某张表的访问权限,但又不能把所有字段都给他看,这时候我们可以创建一个视图,选取那张表或多张表的某些字段创建一个视图,然后把查看视图的权限开放给他即可达到保护数据安全的作用。要注意,因为视图并不真实存在,所以对视图的操作基本上就是对基本表的操作,比如说增加、删除、修改视图的数据,其实就是增删改基本表的数据。确定自己又创建视图的权限之后,可以使用下面的语句创建视图,注意视图类似于表,所以视图名必须是唯一存在的,不能与已有的表名或视图名重复。原创 2022-10-24 10:55:12 · 14348 阅读 · 0 评论 -
【mysql】mysql分别按年/月/日/周分组统计数据
我们可以使用date_format()函数格式化时间,然后进行分组操作例如有一个学生表,结构如下如果不想用date_format函数,可以使用对应的year()/month()/week()/day()函数替代date_format()需要传入一个特定的占位符,mysql常用的占位符可参考下表...原创 2022-07-13 17:30:17 · 4911 阅读 · 0 评论 -
【mysql】MySQL用户操作(创建、删除、修改、授权)
1.操作用户1.1 创建用户create user "用户名"@"可登录地址" identified by "密码";# 例如create user "pan"@"localhost" identified by "12345";# 创建只能在IP192.198.1.1登录的pan用户登录create user 'pan'@'192.198.1.1' identified by '12345';# 创建只能在该内网登录的pan用户登录create user 'pan'@'192.118.原创 2021-06-03 16:40:52 · 603 阅读 · 0 评论 -
【mysql】让不连续的id重新排序
2.背景因为之前某些数据操作不当导致主键id不连续自增了,但后来又需要连续自增的id,所以研究了一下解决方法,最开始的方案是全部导出然后处理id之后再导进去,这个方法有点麻烦,后来通过python脚本的方法去操作也还行,不过还有更简单的办法,那就是删掉id字段再重新加上即可2.解决方法1.导出输出处理完成之后再导入2.使用python等脚本自动更新3.删掉并重建id字段3.解决1、备份表数据(重要)mysqldump -u用户名 -p密码 数据库名 > 文件mysqldump -u原创 2021-05-30 00:58:43 · 848 阅读 · 0 评论 -
【mysql】Ubuntu18安装MySQL、忘记root密码
1.安装sudo apt-get update sudo apt-get install mysql-server上面的安装语句会安装客户端和服务端,安装完就可以直接使用了如果不能使用,看一下是否已经启动MySQLservice mysql startservice mysql stop2.root密码安装的过程中可能会需要你输入root密码,如果没有,我们可以使用debian-sys-maint登录然后修改root密码sudo cat /etc/mysql/debian.cnf #原创 2021-05-08 13:29:12 · 334 阅读 · 0 评论 -
【mysql】让updatetime自动更新
有时候我们会在表里使用一个记录更新时间的字段,例如update_time,它可能是datetime类型或者timestamp等其他时间类型,如果我们想让它在每次更新该条记录的时候自动更新为当前时间,可以修改它的属性# 若该字段不存在ALTER TABLE `software` ADD `update_time` DATETIME on update CURRENT_TIMESTAMP NOT NULL AFTER `is_active`;# 若该字段已存在ALTER TABLE `softwar原创 2021-04-18 11:49:01 · 5148 阅读 · 0 评论 -
【mysql】phpstudy8打开MySQL命令行的方法
之前一直使用PHPStudy2018版本,感觉很强大,但是MySQL版本太低了,由于也许需求,不得不升级到PHPStudy8,虽然界面变好看了不少,但是发现功能却大大减少了,还好MySQL版本还是比较新的phpstudy8是不带phpmyadmin的,可以在“环境”选项手动安装不过它为什么连MySQL命令行面板都移除了…算了,我们需要命令行的时候还是手动打开就行进入phpstudy的安装目录,依次找到.\Extensions\MySQL5.7.26\bin文件夹,里面有一个mysql.exe文件,我们原创 2020-08-28 13:53:21 · 4884 阅读 · 0 评论 -
【Django】MySQL读写分离(主从分离)
1.主从分离为了提高MySQL的性能,一般会选择使用多个MySQL同时工作,分为主服务器和从服务器,一台主服务器对应多台从服务器主从同步是基于二进制日志机制的,主服务器将数据变动的情况写进二进制日志,从服务器读取该日志并且执行该日志文件使数据保持一致优点提高读写性能数据写入和读取是在不同的服务器上进行的,而且可以通过增加从服务器来提高数据库的读取性能提高数据安全因为数据已复制到从服务器,可以在从服务器上备份而不破坏主服务器相应数据2.配置步骤2.1 下载MySQL的docker镜像原创 2020-09-19 13:31:04 · 754 阅读 · 3 评论 -
【mysql】mysql导出CSV文件
1.查看导出权限mysql默认是不给导出数据到文件的,我们可以查看secure_file_prive的路径登录mysql执行:show variables like "%secure%";可以看到secure_file_prive的值,大概有三种secure_file_prive=null,不允许导出文件secure_file_priv=/path/ ,只允许导出到指定路径secure_file_priv="" ,允许导出到任何路径我们可以进入打开mysql的配置文件进行修改Wind原创 2020-08-24 19:43:50 · 1134 阅读 · 0 评论 -
【python】python连接mysql数据库(pymysql)
1.安装pymysqlpip3 install mysql2.使用2.1 创建连接我们导入pymysql包之后,使用connect()方法获取一个连接(Connection),该方法可以传入30多个参数,我们只要传入主要的几个就行参数说明host主机IP地址port连接的端口user登录用户password登录密码database数据库名charset编码(防止乱码)# 导入pymysqlimport pymysql# 连原创 2020-08-17 21:58:13 · 568 阅读 · 0 评论 -
【mysql】索引、建立索引
1.索引其实索引就是一个文件,里面储存了字段的位置信息,可以根据索引快速定位到要查询的数据,所以添加所以可以大大提高查询速度。但是建立索引也需要时间,所以索引一般适用于不常被修改的数据表,而且数据较少也不适合建立索引。一般“键”(比如说主键、外键等)都是索引,当然也可以自己定义某些字段为索引2.建立是使用索引1.创建索引的格式alter table 表名 add index 索引名(字段名)例如给name字段添叫 my_name 的索引,若不指定索引名,默认使用字段名alter table原创 2020-08-17 21:13:13 · 201 阅读 · 0 评论 -
【mysql】mysql引擎和事务
1.mysql支持的引擎我们可以在登录mysql之后执行下面的语句查看引擎show engines;更改引擎使用查看建表语句来查看当前表使用的引擎show create table goods;修改引擎ALTER TABLE 表名 ENGINE=引擎名引擎说明InnoDB目前是mysql默认的引擎,支持事务、行级锁定和外键MyISAM访问速度快,但不支持事务和行级锁,对整个表加锁MEMORY基于哈希,存储在内存中,对临时表有用CSV处理原创 2020-08-17 15:39:31 · 211 阅读 · 0 评论 -
【mysql】将一张表拆分成多张表
目前已有jing_dong表,里面有id、name、cate_name、brand_name、price、is_show、is_saleoff几个字段1.创建新的表新建的good_cates表有id和name两个字段create table good_cates( id int not null primary key auto_increment, name varchar(50) not null);2.把原表的数据插入到新表中insert into good_cat原创 2020-08-17 10:43:40 · 3374 阅读 · 0 评论 -
【mysql】外键和外键约束
1.外键如果公共关键字在一个关系中是主关键字,那么这个公共关键字被称为另一个关系的外键。就是A表的主键,被用到了B表中,此时它就成了外键原创 2020-08-15 21:21:00 · 590 阅读 · 0 评论 -
【mysql】内连接、左连接、右连接、自连接、union、union all
1.连接当需要查询的数据字段来自多个表时,我们需要连表查询,连接又分为内连接、左右连接,自连接是内连接的一种特殊形式2.内连接内连接是取两个表中的交集,使用on关键字来指定交集条件语法格式select 字段 from 表1 inner join 表2 on 表1.字段1 = 表2.字段2如果不指定on的条件,则两个表进行笛卡尔运算举例select * from students inner join classes on students.cls_id=classes.id;取别名原创 2020-08-15 20:40:47 · 824 阅读 · 1 评论 -
【mysql】聚合函数和分组查询
mysql聚合和分组查询聚合函数说明count()统计个数原创 2020-08-15 17:46:37 · 733 阅读 · 0 评论 -
【mysql】mysql数据库备份与恢复
1.备份数据库在shell窗口使用mysqldump命令备份数据库mysqldump -u用户名 -pd密码 数据库名 > 文件例如mysqldump -uroot -pmysql python39 > /root/bak.sql2.导入已备份的数据库方法1在shell窗口使用命令mysql -u用户名 -p用户名 数据库名 < 文件例如mysql -uroot -pmysql python39 < /root/python.sql方法2登录mysql之后原创 2020-08-15 10:32:43 · 237 阅读 · 0 评论 -
【mysql】查询排序、分页查询
1.排序排序方式说明asc按升序排列(默认)desc按降序排序1.按age排序select * from students order by age;2.按age降序,若age相同,按height降序排序select * from students order by age desc,height desc;2.分页查询limit用法select * from 表名 limit start,count1.start,开始位置,默认是02.count,原创 2020-08-14 17:29:57 · 659 阅读 · 0 评论 -
【mysql】数据的增删改查(CURD)操作、去重、别名、where限制条件
目前已经创建好数据表student,有 id、name、age、height、gender、weight 六个字段, id主键自增1.查询数据(Retrieve)1.查询全部字段的数据select * from students;2.查询指定字段的数据,用逗号隔开select name,gender from students;3.用where指定查询条件select name,gender from students where age=0;4.若查询到重复数据,可以使用distin原创 2020-08-14 17:18:39 · 580 阅读 · 0 评论 -
【mysql】数据库、数据表、字段的基本操作
1.连接数据库 mysql -uroot -p2.数据库相关显示数据库show databases;创建一个叫school的数据库create database school charset=utf8;删除一个叫shool的数据库drop database shcool;使用某个数据库use school;查看当前处于哪个数据库select database();3.数据表操作显示数据表show tables;...原创 2020-08-14 17:16:27 · 306 阅读 · 0 评论 -
【mysql】mysql部分数据类型
1.数值类型字节大小signedunsignedtinyint1-128~1270~255smallint2-32768~327670~65535mediumint3-8388608~83886070 ~ 16777215int/integer4-2147483648 ~21474836470 ~ 4294967295bigint8-9223372036854775808 ~ 92233720368547758070 ~ 184原创 2020-08-14 17:14:34 · 134 阅读 · 0 评论 -
【mysql】数据库的相关概念(DQL、DBA、DBS、DBMS、RDBMS)
1.数据库存储和管理数据的仓库,关系模型就是二维表格模型2.数据库的分类关系型数据库和非关系型数据库关系型数据库常见的有Oracle、MySQL、SQlite等,是二维表结构核心元素:数据行、数据列、数据表、数据库(数据表的集合)非关系型数据库非关系型数据库又称为NoSQL,强调键值对的方式进行数据存储。常见的有MongoDB、Redis等3.数据库的优点数据持久化读写速度极快保证数据的有效性...原创 2020-08-14 14:26:12 · 1654 阅读 · 0 评论