主頁 > 資料庫 > MySql-Day-01

MySql-Day-01

2021-03-03 07:18:06 資料庫

MySql

  • 能夠理解資料庫的概念
  • 能夠安裝MySQL資料庫
  • 能夠啟動,關閉及登錄MySQL
  • 能夠使用SQL陳述句操作資料庫
  • 能夠使用SQL陳述句操作表結構
  • 能夠使用SQL陳述句進行資料的添加修改和洗掉的操作
  • 能夠使用SQL陳述句添加約束

一、資料庫介紹

1.1、資料庫概念

  • 什么是資料庫

    ? 資料庫就是存盤資料的倉庫,其本質是一個檔案系統,資料按照特定的格式將資料存盤起來,用戶可以對資料庫中的資料進行增加,修改,洗掉及查詢操作,

  • 什么是資料庫管理系統

    ? 資料庫管理系統(DataBase Management System,DBMS):指一種操作和管理資料庫的大型軟體,用于建立、使用和維護資料庫,對資料庫進行統一管理和控制,以保證資料庫的安全性和完整性,用戶通過資料庫管理系統訪問資料庫中表內的資料,

  • 資料庫與資料庫管理系統的關系

1.2、資料庫表

? 資料庫中以表為組織單位存盤資料,

? 表類似Java類,每個欄位都有對應的資料型別,

用Java程式來與關系型資料對比,就會發現以下對應關系,

  • 類----------表
  • 類中屬性----------表中欄位
  • 物件----------記錄

1.3、表資料

? 根據表欄位所規定的資料型別,我們可以向其中填入一條條的資料,而表中的每條資料類似類的實體物件,表中的一行一行的資訊我們稱之為記錄,

  • 表記錄與Java類物件的對應關系

1.4、常見資料庫

? 常見的資料庫管理系統

  • MYSQL:開源免費的資料庫,小型的資料庫,已經被Oracle收購了,MySQL6.x版本也開始收費,
  • Oracle:收費的大型資料庫,Oracle公司的產品,Oracle收購SUN公司,收購MYSQL,
  • DB2:IBM公司的資料庫產品,收費的,常應用在銀行系統中,
  • SQLServer:MicroSoft公司收費的中型的資料庫,C#、.net等語言常使用,
  • SyBase:已經淡出歷史舞臺,提供了一個非常專業資料建模的工具PowerDesigner,
  • SQLite:嵌入式的小型資料庫,應用在手機端,

? 常用資料庫:MYSQL、Oracle,

? 這里使用MySQL資料庫,MySQL中可以有多個資料庫,資料庫是真正存盤資料的地方,

二、MySql資料庫

2.1、MySql安裝

  • 安裝(參考MySQL安裝圖解.doc)

? 安裝后,MySQL會以windows服務的方式為我們提供資料存盤功能,開啟和關閉服務的操作:

? 右鍵點擊我的電腦 → 管理 → 服務 → 找到MySQL服務開啟或停止,

? 也可以在DOS視窗,通過命令完成MySQL服務的啟動和停止(必須以管理員身份運行cmd命令視窗),

2.2、登錄MySQL資料庫

? MySQL是一個需要賬戶名密碼登錄的資料庫,登陸后使用,它提供了一個默認的root賬號,使用安裝時設定的密碼即可登錄,

格式1:cmd>mysql –u用戶名 –p密碼

例如:mysql -uroot –proot
格式2:cmd>mysql--host=ip地址--user=用戶名--password=密碼

例如:mysql--host=127.0.0.1--user=root--password=root

三、SQL陳述句

3.1 、SQL概述

SQL陳述句介紹

? 資料庫是不認識Java語言的,但是我們同樣要與資料庫互動,這時需要使用到資料庫認識的語言SQL陳述句,它是資料庫的代碼,結構化查詢語言(Structured Query Language)簡稱SQL,是關系型資料庫管理系統都需要遵循的規范,不同的資料庫生產廠商都支持SQL陳述句,但都有特有內容,

SQL陳述句分類

  • SQL分類:
    • 資料定義語言:簡稱DDL(Data De?nition Language),用來定義資料庫物件:資料庫、表、列等,關鍵字:create、alter、drop等,
    • 資料操作語言:簡稱DML(Data Manipulation Language),用來對資料庫中表的記錄進行更新,關鍵字:insert、delete、update等,
    • 資料控制語言:簡稱DCL(Data Control Language),用來定義資料庫的訪問權限和安全級別及創建用戶,
    • 資料查詢語言:簡稱DQL(Data Query Language),用來查詢資料庫中表的記錄,關鍵字:select、from、where等,

SQL通用語法

  • SQL陳述句可以單行或多行書寫,以分號結尾,
  • 可使用空格和縮進來增強陳述句的可讀性,
  • MySQL資料庫的SQL陳述句不區分大小寫,關鍵字建議使用大寫,
    • 例如:SELECT * FROM user,
  • 同樣可以使用/**/的方式完成注釋,
  • MySQL中的我們常使用的資料型別如下:
型別名稱 說明
int(Integer) 整數型別.
double 小數型別.
decimal(m,d) 指定整數位與小數位長度的小數型別.
date 日期型別,格式為yyyy-MM-dd,包含年月日,不包含時分秒.
datetime 日期型別,格式為YYYY-MM-DD HH:MM:SS,包含時分秒.
timestamp 日期格式,時間戳.
varchar(M) 文本型別,M為0 ~ 65535 之間的整數.

3.2、DDL之資料庫操作:database

創建資料庫

格式:

create database 資料庫名;
create database 資料庫名 character set 字符集;

例如:

#創建資料庫資料庫中資料的編碼采用的是安裝資料庫時指定的默認編碼utf8
CREATE DATABASE webdb_1;
#創建資料庫并指定資料庫中資料的編碼
CREATE DATABASE webdb_2 CHARACTER SET utf8;

查看資料庫

查看資料庫MySQL服務器中的所有的資料庫:

show databases;

查看某個資料庫的定義的資訊:

show create database 資料庫名;

例如:

show create database webdb_1;

洗掉資料庫

drop database 資料庫名稱;

例如:

drop database webdb_2;

使用資料庫

查看正在使用的資料庫:

select database();

其他的資料庫操作命令切換資料庫:

use 資料庫名;

例如:

use webdb_1;

3.3、 DDL之表操作:table

創建表

格式:

create table 表名(
	欄位名型別(長度)[約束],
	欄位名型別(長度)[約束],
	...
);
型別:
	varchar(n)	字串
	int			整形
	double		浮點
	date		時間
	timestamp	時間戳
約束:(詳情查看第四章)
	primary key 主鍵,被主鍵修飾欄位中的資料,不能重復、不能為null,

例如:創建分類表

CREATE TABLE category(
	cid INT primary key, #分類ID
	cname VARCHAR(100) #分類名稱
);

查看表

  • 查看資料庫中的所有表:
格式: show tables;
  • 查看表結構:
格式: desc 表名;
例如: desc category;

洗掉表

  • 格式:drop table 表名;
例如: drop table category;

修改表結構格式

  • alter table 表名 add 列名型別(長度) [約束];
    作用:修改表添加列,
例如:#1、為分類表添加一個新的欄位為分類描述 varchar(20)
ALTER TABLE category ADD 'desc' VARCHAR(20);
  • alter table 表名 modify 列名型別(長度)約束;
    作用:修改表修改列的型別長度及約束,
例如:#2、為分類表的描述欄位進行修改,型別 varchar(50) 添加約束notnull
ALTER TABLE category MODIFY 'desc' VARCHAR(50) NOT NULL;
  • alter table 表名 change 舊列名 新列名 型別(長度)約束;

    作用:修改表修改列名,

例如:#3、為分類表的分類名稱欄位進行更換更換為 description varchar(30)
ALTER TABLE category CHANGE 'desc' description VARCHAR(30);
  • alter table 表名 drop 列名;
    作用:修改表洗掉列,
例如:#4、洗掉分類表中description這列
ALTER TABLE category DROP description;
  • rename table 表名 to 新表名;
    作用:修改表名,
例如:#5、為分類表 category 改名成 category2
RENAME TABLE category TO category2;
  • alter table 表名 character set 字符集(了解);
    作用:修改表的字符集,
例如:#6、為分類表 category 的編碼表進行修改,修改成gbk
ALTER TABLE category CHARACTER SET gbk;

3.4、DML資料操作語言

插入表記錄:insert

  • 語法:
--向表中插入某些欄位
insert into 表 (欄位1,欄位2,欄位3..) values (值1,值2,值3..);
--向表中插入所有欄位,欄位的順序為創建表時的順序,
insert into 表 values (值1,值2,值3..);
  • 注意:
  • 值與欄位必須對應,個數相同,型別相同
  • 值的資料大小必須在欄位的長度范圍內
  • 除了數值型別外,其它的欄位型別的值必須使用引號引起,(建議單引號)
  • 如果要插入空值,可以不寫欄位,或者插入null,
  • 例如:
INSERT INTO category (cid,cname) VALUES ('c001','電器');
INSERT INTO category (cid,cname) VALUES ('c002','服飾');
INSERT INTO category (cid,cname) VALUES ('c003','化妝品');
INSERT INTO category (cid,cname) VALUES ('c004','書籍');
INSERT INTO category (cid) VALUES ('c005');
INSERT INTO category (cname,cid) VALUES ('耗材','c006');

更新表記錄:update

? 用來修改指定條件的資料,將滿足條件的記錄指定列修改為指定值,

  • 語法:
    更新所有記錄的指定欄位
update 表名 set 欄位名=值,欄位名=值,...;

? 更新符合條件記錄的指定欄位

update 表名 set 欄位名=值,欄位名=值,...where條件;
  • 注意:
    • 列名的型別與修改的值要一致.
    • 修改值得時候不能超過最大長度.
    • 除了數值型別外,其它的欄位型別的值必須使用引號引起

洗掉記錄:delete

  • 語法:

    delete from 表名 [where條件];
    

3.5、DOS操作資料亂碼解決

我們在dos命令列操作中文時,會報錯

insert into category (cid,cname) values (‘c010’,’中文’);
ERROR1366 (HY000): Incorrect string value:'\xB7\xFE\xD7\xB0' for column 'cname' at row 1  

錯誤原因:因為 mysql 的客戶端設定編碼是 utf8,而系統的 cmd 視窗編碼是 gbk
1、 查看MySQL內部設定的編碼

show variables like 'character%'; 查看所有mysql的編碼  

2、需要修改client、connection、results的編碼一致(GBK編碼)
解決方案1:在cmd命令視窗中輸入命令,此操作當前視窗有效,為臨時方案,

set names gbk;  

解決方案2:安裝目錄下修改my.ini檔案,重啟服務所有地方生效,

四、SQL約束

4.1 主鍵約束

PRIMARY KEY 約束唯一標識資料庫表中的每條記錄,

  • 主鍵必須包含唯一的值,
  • 主鍵列不能包含 NULL 值,
  • 每個表都應該有一個主鍵,并且每個表只能有一個主鍵,

添加主鍵約束

方式一:創建表時,在欄位描述處,宣告指定欄位為主鍵 :

CREATE TABLE persons
(
	id_p int PRIMARY KEY,
	lastname varchar(255),
	firstname varchar(255),
	address varchar(255),
	city varchar(255)
) ; 

方式二:創建表時,在constraint約束區域,宣告指定欄位為主鍵:

  • 格式: [constraint 名稱] primary key (欄位串列)
  • 關鍵字constraint可以省略,如果需要為主鍵命名,constraint不能省略,主鍵名稱一般沒用,
  • 欄位串列需要使用小括號括住,如果有多欄位需要使用逗號分隔,宣告兩個以上欄位為主鍵,我們稱為聯合主鍵,
CREATE TABLE persons
( 
    firstname varchar(255),
	lastname varchar(255),
	address varchar(255),
	city varchar(255),
	CONSTRAINT pk_personID PRIMARY KEY (firstname,lastname)
) ;

方式三:創建表之后,通過修改表結構,宣告指定欄位為主鍵:

  • 格式: ALTER TABLE persons ADD [CONSTRAINT 名稱] PRIMARY KEY (欄位串列)
CREATE TABLE persons
(
	firstname varchar(255),
	lastname varchar(255),
	address varchar(255),
	city varchar(255)
)
ALTER TABLE persons ADD PRIMARY KEY (firstname,lastname)  

洗掉主鍵約束

如需撤銷 PRIMARY KEY 約束,請使用下面的 SQL:

ALTER TABLE persons DROP PRIMARY KEY;

4.2 自動增長列

我們通常希望在每次插入新記錄時,資料庫自動生成欄位的值,
我們可以在表中使用 auto_increment(自動增長列)關鍵字,自動增長列型別必須是整形,自動增長列必須為鍵(一般是主鍵),

  • 下列 SQL 陳述句把 "persons" 表中的 "p_id" 列定義為 auto_increment 主鍵
CREATE TABLE persons
(
	p_id int PRIMARY KEY AUTO_INCREMENT,
	lastname varchar(255),
	firstname varchar(255),
	address varchar(255),
	city varchar(255)
); 
  • 向persons添加資料時,可以不為p_id欄位設定值,也可以設定成null,資料庫將自動維護主鍵值:
INSERT INTO persons (firstname,lastname) VALUES ('Bill','Gates')
INSERT INTO persons (p_id,firstname,lastname) VALUES (NULL,'Bill','Gates');
  • 擴展:默認AUTO_INCREMENT 的開始值是 1,如果希望修改起始值,請使用下列 SQL 語法:
ALTER TABLE persons AUTO_INCREMENT=100;
  • 面試題

問:針對auto_increment ,洗掉表中所有記錄使用 delete from 表名 或使用 truncate table 表名,二者有什么區別?

洗掉方式:
delete 一條一條洗掉,不清空auto_increment記錄數,
truncate 直接將表洗掉,重新建表,auto_increment將置為零,從新開始, 

4.3 非空約束

NOT NULL 約束強制列不接受 NULL 值,
NOT NULL 約束強制欄位始終包含值,這意味著,如果不向欄位添加值,就無法插入新記錄或者更新記錄,

  • 下面的 SQL 陳述句強制 "id_p" 列和 "lastname" 列不接受 NULL 值:
CREATE TABLE persons
(
	id_p int NOT NULL,
	lastname varchar(255) NOT NULL,
	firstname varchar(255),
	address varchar(255),
	city varchar(255)
);

4.4 唯一約束

UNIQUE 約束唯一標識資料庫表中的每條記錄, UNIQUE 和 PRIMARY KEY 約束均為列或列集合提供了唯一性的保證, PRIMARY KEY 擁有自動定義的 UNIQUE 約束, 請注意,每個表可以有多個 UNIQUE 約束,但是每個表只能
有一個 PRIMARY KEY 約束,

添加唯一約束

與主鍵添加方式相同,共有3種

  • 方式一:創建表時,在欄位描述處,宣告唯一:
CREATE TABLE persons
(
	id_p int NOT NULL,
	lastname varchar(255) NOT NULL,
	firstname varchar(255),
	address varchar(255),
	city varchar(255)
);
  • 方式二:創建表時,在約束區域,宣告唯一:
CREATE TABLE persons
( 
	id_p int,
	lastname varchar(255) NOT NULL,
	firstname varchar(255),
	address varchar(255),
	city varchar(255),
	CONSTRAINT 名稱UNIQUE (Id_P)
) ; 
  • 方式三:創建表后,修改表結構,宣告欄位唯一:
ALTER TABLE persons ADD [CONSTRAINT 名稱] UNIQUE (Id_P);

洗掉唯一約束

  • 如需撤銷 UNIQUE 約束,請使用下面的 SQL:
ALTER TABLE persons DROP INDEX 名稱;
  • 如果添加唯一約束時,沒有設定約束名稱,默認是當前欄位的欄位名,

第5章 MySQL資料庫密碼重置(擴展)

1、停止mysql服務器運行輸入services.msc 停止mysql服務,

2、 在cmd下,輸入mysqld --console --skip-grant-tables 啟動服務器,出現一下頁面,不要關閉該視窗,

3、 新打開cmd,輸入mysql -uroot 不需要密碼,

use mysql;
update user set password=password('abc') WHERE user='root'; 

4、關閉兩個cmd視窗,

轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/265325.html

標籤:其他

上一篇:🍖事務隔離機制

下一篇:資料庫-事務

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • GPU虛擬機創建時間深度優化

    **?桔妹導讀:**GPU虛擬機實體創建速度慢是公有云面臨的普遍問題,由于通常情況下創建虛擬機屬于低頻操作而未引起業界的重視,實際生產中還是存在對GPU實體創建時間有苛刻要求的業務場景。本文將介紹滴滴云在解決該問題時的思路、方法、并展示最終的優化成果。 從公有云服務商那里購買過虛擬主機的資深用戶,一 ......

    uj5u.com 2020-09-10 06:09:13 more
  • 可編程網卡芯片在滴滴云網路的應用實踐

    **?桔妹導讀:**隨著云規模不斷擴大以及業務層面對延遲、帶寬的要求越來越高,采用DPDK 加速網路報文處理的方式在橫向縱向擴展都出現了局限性。可編程芯片成為業界熱點。本文主要講述了可編程網卡芯片在滴滴云網路中的應用實踐,遇到的問題、帶來的收益以及開源社區貢獻。 #1. 資料中心面臨的問題 隨著滴滴 ......

    uj5u.com 2020-09-10 06:10:21 more
  • 滴滴資料通道服務演進之路

    **?桔妹導讀:**滴滴資料通道引擎承載著全公司的資料同步,為下游實時和離線場景提供了必不可少的源資料。隨著任務量的不斷增加,資料通道的整體架構也隨之發生改變。本文介紹了滴滴資料通道的發展歷程,遇到的問題以及今后的規劃。 #1. 背景 資料,對于任何一家互聯網公司來說都是非常重要的資產,公司的大資料 ......

    uj5u.com 2020-09-10 06:11:05 more
  • 滴滴AI Labs斬獲國際機器翻譯大賽中譯英方向世界第三

    **桔妹導讀:**深耕人工智能領域,致力于探索AI讓出行更美好的滴滴AI Labs再次斬獲國際大獎,這次獲獎的專案是什么呢?一起來看看詳細報道吧! 近日,由國際計算語言學協會ACL(The Association for Computational Linguistics)舉辦的世界最具影響力的機器 ......

    uj5u.com 2020-09-10 06:11:29 more
  • MPP (Massively Parallel Processing)大規模并行處理

    1、什么是mpp? MPP (Massively Parallel Processing),即大規模并行處理,在資料庫非共享集群中,每個節點都有獨立的磁盤存盤系統和記憶體系統,業務資料根據資料庫模型和應用特點劃分到各個節點上,每臺資料節點通過專用網路或者商業通用網路互相連接,彼此協同計算,作為整體提供 ......

    uj5u.com 2020-09-10 06:11:41 more
  • 滴滴資料倉庫指標體系建設實踐

    **桔妹導讀:**指標體系是什么?如何使用OSM模型和AARRR模型搭建指標體系?如何統一流程、規范化、工具化管理指標體系?本文會對建設的方法論結合滴滴資料指標體系建設實踐進行解答分析。 #1. 什么是指標體系 ##1.1 指標體系定義 指標體系是將零散單點的具有相互聯系的指標,系統化的組織起來,通 ......

    uj5u.com 2020-09-10 06:12:52 more
  • 單表千萬行資料庫 LIKE 搜索優化手記

    我們經常在資料庫中使用 LIKE 運算子來完成對資料的模糊搜索,LIKE 運算子用于在 WHERE 子句中搜索列中的指定模式。 如果需要查找客戶表中所有姓氏是“張”的資料,可以使用下面的 SQL 陳述句: SELECT * FROM Customer WHERE Name LIKE '張%' 如果需要 ......

    uj5u.com 2020-09-10 06:13:25 more
  • 滴滴Ceph分布式存盤系統優化之鎖優化

    **桔妹導讀:**Ceph是國際知名的開源分布式存盤系統,在工業界和學術界都有著重要的影響。Ceph的架構和演算法設計發表在國際系統領域頂級會議OSDI、SOSP、SC等上。Ceph社區得到Red Hat、SUSE、Intel等大公司的大力支持。Ceph是國際云計算領域應用最廣泛的開源分布式存盤系統, ......

    uj5u.com 2020-09-10 06:14:51 more
  • es~通過ElasticsearchTemplate進行聚合~嵌套聚合

    之前寫過《es~通過ElasticsearchTemplate進行聚合操作》的文章,這一次主要寫一個嵌套的聚合,例如先對sex集合,再對desc聚合,最后再對age求和,共三層嵌套。 Aggregations的部分特性類似于SQL語言中的group by,avg,sum等函式,Aggregation ......

    uj5u.com 2020-09-10 06:14:59 more
  • 爬蟲日志監控 -- Elastc Stack(ELK)部署

    傻瓜式部署,只需替換IP與用戶 導讀: 現ELK四大組件分別為:Elasticsearch(核心)、logstash(處理)、filebeat(采集)、kibana(可視化) 下載均在https://www.elastic.co/cn/downloads/下tar包,各組件版本最好一致,配合fdm會 ......

    uj5u.com 2020-09-10 06:15:05 more
最新发布
  • day02-2-商鋪查詢快取

    功能02-商鋪查詢快取 3.商鋪詳情快取查詢 3.1什么是快取? 快取就是資料交換的緩沖區(稱作Cache),是存盤資料的臨時地方,一般讀寫性能較高。 快取的作用: 降低后端負載 提高讀寫效率,降低回應時間 快取的成本: 資料一致性成本 代碼維護成本 運維成本 3.2需求說明 如下,當我們點擊商店詳 ......

    uj5u.com 2023-04-20 08:33:24 more
  • MySQL中binlog備份腳本分享

    關于MySQL的二進制日志(binlog),我們都知道二進制日志(binlog)非常重要,尤其當你需要point to point災難恢復的時侯,所以我們要對其進行備份。關于二進制日志(binlog)的備份,可以基于flush logs方式先切換binlog,然后拷貝&壓縮到到遠程服務器或本地服務器 ......

    uj5u.com 2023-04-20 08:28:06 more
  • day02-短信登錄

    功能實作02 2.功能01-短信登錄 2.1基于Session實作登錄 2.1.1思路分析 2.1.2代碼實作 2.1.2.1發送短信驗證碼 發送短信驗證碼: 發送驗證碼的介面為:http://127.0.0.1:8080/api/user/code?phone=xxxxx<手機號> 請求方式:PO ......

    uj5u.com 2023-04-20 08:27:27 more
  • 快取與資料庫雙寫一致性幾種策略分析

    本文將對幾種快取與資料庫保證資料一致性的使用方式進行分析。為保證高并發性能,以下分析場景不考慮執行的原子性及加鎖等強一致性要求的場景,僅追求最終一致性。 ......

    uj5u.com 2023-04-20 08:26:48 more
  • sql陳述句優化

    問題查找及措施 問題查找 需要找到具體的代碼,對其進行一對一優化,而非一直把關注點放在服務器和sql平臺 降低簡化每個事務中處理的問題,盡量不要讓一個事務拖太長的時間 例如檔案上傳時,應將檔案上傳這一步放在事務外面 微軟建議 4.啟動sql定時執行計劃 怎么啟動sqlserver代理服務-百度經驗 ......

    uj5u.com 2023-04-20 08:26:35 more
  • 云時代,MySQL到ClickHouse資料同步產品對比推薦

    ClickHouse 在執行分析查詢時的速度優勢很好的彌補了MySQL的不足,但是對于很多開發者和DBA來說,如何將MySQL穩定、高效、簡單的同步到 ClickHouse 卻很困難。本文對比了 NineData、MaterializeMySQL(ClickHouse自帶)、Bifrost 三款產品... ......

    uj5u.com 2023-04-20 08:26:29 more
  • sql陳述句優化

    問題查找及措施 問題查找 需要找到具體的代碼,對其進行一對一優化,而非一直把關注點放在服務器和sql平臺 降低簡化每個事務中處理的問題,盡量不要讓一個事務拖太長的時間 例如檔案上傳時,應將檔案上傳這一步放在事務外面 微軟建議 4.啟動sql定時執行計劃 怎么啟動sqlserver代理服務-百度經驗 ......

    uj5u.com 2023-04-20 08:25:13 more
  • Redis 報”OutOfDirectMemoryError“(堆外記憶體溢位)

    Redis 報錯“OutOfDirectMemoryError(堆外記憶體溢位) ”問題如下: 一、報錯資訊: 使用 Redis 的業務介面 ,產生 OutOfDirectMemoryError(堆外記憶體溢位),如圖: 格式化后的報錯資訊: { "timestamp": "2023-04-17 22: ......

    uj5u.com 2023-04-20 08:24:54 more
  • day02-2-商鋪查詢快取

    功能02-商鋪查詢快取 3.商鋪詳情快取查詢 3.1什么是快取? 快取就是資料交換的緩沖區(稱作Cache),是存盤資料的臨時地方,一般讀寫性能較高。 快取的作用: 降低后端負載 提高讀寫效率,降低回應時間 快取的成本: 資料一致性成本 代碼維護成本 運維成本 3.2需求說明 如下,當我們點擊商店詳 ......

    uj5u.com 2023-04-20 08:24:03 more
  • day02-短信登錄

    功能實作02 2.功能01-短信登錄 2.1基于Session實作登錄 2.1.1思路分析 2.1.2代碼實作 2.1.2.1發送短信驗證碼 發送短信驗證碼: 發送驗證碼的介面為:http://127.0.0.1:8080/api/user/code?phone=xxxxx<手機號> 請求方式:PO ......

    uj5u.com 2023-04-20 08:23:11 more