MySQL數(shù)據(jù)庫開發(fā)
基礎概念
1.數(shù)據(jù):描述事物特征的符號,屬性
2.數(shù)據(jù)庫的概念:管理計算機中的數(shù)據(jù)的倉庫
2.記錄: 一系列典型的特征
3.表:文件
4.庫:文件夾
5.數(shù)據(jù)庫管理軟件:MySQL oracle,db2,sqlserver
6.數(shù)據(jù)庫服務器:運行數(shù)據(jù)庫管理軟件的計算機
7.mysql是一個基于socket編寫的C/S架構的軟件
數(shù)據(jù)庫管理軟件
分類
關系型:sqllite db2,oracle sqlserver. MySQL
就是一個個表結(jié)構組成的,表結(jié)構就是由一些字段(屬性)+約束條件+數(shù)據(jù)類型組成的
非關系型:mongdb redis
2.非關系型:mongdb redis
沒有表的結(jié)構,
存儲方式
關系型:二維表的形式
非關系型:key:value
安裝
1.linux版本
2.windows版本
安裝方式:圖形化指導安裝,命令形式安裝
選擇版本:5.5 ,5.6,盡量不安裝8版本的,坑
基本是點默認。
如果最后配置安裝的時候,開啟啟動服務停留了很久,
出現(xiàn)的原因是:之前安裝的mysql的配置文件沒有刪除干凈以及mysql服務注冊表沒有刪除,
解決辦法:
mysql數(shù)據(jù)配置文件默認在C:ProgramDataMySQL 將這個刪除干凈,包括空文件也要刪除
注冊表的事情,就不要亂動了。。后面再試試重新安裝一個MySQL,
步驟只到安裝完成,后面配置部分就不要點了,我們手動配置系統(tǒng)服務
進入cmd
輸入 mysqld --install MySQL55 這是生成一個系統(tǒng)服務名字叫MySQL55
然后 net start MySQL55 開啟MySQL服務
以root登錄MySQL 直接回車進入無需密碼,通過mysql.user表來添加密碼
mysql啟動登錄
1.win+R 打開搜索框 輸入cmd (這只是普通用戶登錄打開cmd與上述cmd打開方式不同)
2.然后輸入 mysql
3.然后輸入密碼 (root用戶默認沒密碼直接回車)
密碼設置
一開始沒有設置密碼所以需要設置
第一種:不用登錄進mysql
win+Q 搜索cmd 選中命令提示符右擊管理員登錄。
輸入指令:mysqladmin -uroot -p password 123456
上述命令參數(shù)說明:-u 指用戶 -p指密碼
上述指令意思:以root用戶登錄 設置密碼為123456
第二種:以root用戶登錄mysql
先登錄mysql,修改mysql數(shù)據(jù)庫中的表user的用戶的密碼
指令:update user set password=password('123456') where user="root";
指令解釋:修改表設置user為root的記錄的密碼為123456
修改密碼
(建議第二種方法)
第一種不登陸mysql:
修改密碼指令:mysqladmin -uroot -p123456 password 123abc;
上述指令意思:以root用戶登錄將密碼123456修改為123abc
第二種登錄mysql:
方法:修改mysql數(shù)據(jù)庫中表user
指令:update user set password=password('newmima') where user="root";
如果密碼忘記怎么辦?
WIndows下
1.徹底刪除mysql(暴力)
卸載mysql~~~~
2.繞開權限表登錄(合理)
繞開權限表登錄,然后進入到mysql之后,設置密碼
(1)繞開權限表:
管理員進入cmd:
先停止當前mysql服務輸入指令net stop MySQL
然后繞過權限表:mysqld --skip -grant-tables
(2)之后打開一個新的cmd管理員身份登錄 mysql
輸入指令: mysql 回車就能直接登錄進入mysql
輸入指令通過修改數(shù)據(jù)庫中的表設置密碼:(登錄進mysql后每一條指令輸完后要加分號,表示該指令結(jié)尾)
update mysql.user set password=password(‘123456’) where root and host=“l(fā)ocalhost”;
為什么不直接password=”123456“呢 而用password=password(‘123456’)這是因為放入到數(shù)據(jù)庫中的密碼不能是明文的,而是要加密的。所以使用他自帶的函數(shù)password()
刷新權限:flush privileges;
(3)殺死繞開權限表的進程,這樣我們才能以正常方式登錄
管理員身份進入cmd
輸入指令:tasklist |findstr mysql 查詢mysql進程
殺死進程輸入指令:taskkill /F /pid 32312
上述指令參數(shù)說明: /F 表示強制 /pid表示進程號 后面32312是tasklist |findstr mysql查詢得到的進程號
(4)啟動mysql服務
進入cmd 輸入:net start MySQL
(5)mysql -uroot -p 再輸入密碼就可以進入了
查看數(shù)據(jù)庫文件存放的物理位置
show global variables like “%datadir%”;
sql(Structed query language)結(jié)構化查詢語言
分類
1.DDL數(shù)據(jù)定義語言
操作對象:數(shù)據(jù)庫,表,視圖等
2.DCL數(shù)據(jù)控制語言
操作對象: 表內(nèi)的內(nèi)容
操作:增 刪 修改
3.DML數(shù)據(jù)操縱語言
對數(shù)據(jù)庫進行一些事務管理等:
比如授權。
4.DQL數(shù)據(jù)查詢語言
操作對象:數(shù)據(jù)。
操作:查詢
數(shù)據(jù)的CURD操作
操作數(shù)據(jù)庫(文件夾)
(記住幾個關鍵字就可以了)
CURD操作
增(Create)
CREATE database db1 charset utf8;
刪除(DELETE)
DROP database db1;
改(ALTER)
ALTER datbase charset gbk;
查(Retrieve)
SHOW databases;(顯示數(shù)據(jù)庫有哪些)
SHOW CREATE database db1;(查看當前創(chuàng)建的數(shù)據(jù)庫db1)
操作表(文件)
選擇數(shù)據(jù)庫
use db1;
增加(CREATE)
CREATE table tb1(
sid int unsigned not null primary key auto_increment,
name varchar(20) not null,
age tinyint not null
);
刪除(DELETE)
DROP table tb1;
改
修改表的字段名: ALTER table change id sid int unsigned NOT NULL PRIMARY KEY;
查(RETRIEVE)
SHOW tables;//顯示所有的表
SHOW create table tb1;
DESC tb1;
操作數(shù)據(jù)
增
INSERT INTO tb(id,name)values(1,‘zc’),(2,‘ls’);
刪
DELETE FROM tb WHERE id=1;
改
UPDATE *FROM tB WHERE id=1;
查
SELECT *FROM tb ;//查詢整個表內(nèi)的所有數(shù)據(jù)
存儲引擎的介紹
什么是存儲引擎?
create table t1(id int)engine=innnodb;
就是控制管理表的類型,不同的引擎對于表的類型是有不同定義的,存儲引擎幫助管理存儲在數(shù)據(jù)庫中的數(shù)據(jù)
數(shù)據(jù)操作
約束
概念:對數(shù)據(jù)進行一些約束,保證數(shù)據(jù)的正確性和完整性
有四類:
1.主鍵約束 PRIMARY KEY
2.非空約束 NOT NULL
3.唯一約束 UNIQUE
4.外鍵約束 FOREIGN KEY
-
WINDOWS
+關注
關注
4文章
3592瀏覽量
90592 -
數(shù)據(jù)庫
+關注
關注
7文章
3875瀏覽量
65430 -
MySQL
+關注
關注
1文章
839瀏覽量
27243
發(fā)布評論請先 登錄
相關推薦
工業(yè)智能網(wǎng)關采集能耗數(shù)據(jù)對接到MySQL數(shù)據(jù)庫

數(shù)據(jù)庫數(shù)據(jù)恢復——MySQL數(shù)據(jù)庫誤刪除表記錄的數(shù)據(jù)恢復案例

從Delphi、C++ Builder和Lazarus連接到MySQL數(shù)據(jù)庫

適用于MySQL和MariaDB的Python連接器:可靠的MySQL數(shù)據(jù)連接器和數(shù)據(jù)庫

MySQL數(shù)據(jù)庫的安裝

構建數(shù)據(jù)庫解決方案,基于華為云 Flexus X 實例容器化 MySQL 主從同步架構

云數(shù)據(jù)庫是哪種數(shù)據(jù)庫類型?
數(shù)據(jù)庫數(shù)據(jù)恢復—Mysql數(shù)據(jù)庫表記錄丟失的數(shù)據(jù)恢復流程

數(shù)據(jù)庫數(shù)據(jù)恢復—MYSQL數(shù)據(jù)庫ibdata1文件損壞的數(shù)據(jù)恢復案例
香港云服務器怎么部署MySQL數(shù)據(jù)庫?
zabbix監(jiān)控系統(tǒng)的安裝與配置
數(shù)據(jù)庫數(shù)據(jù)恢復—通過拼接數(shù)據(jù)庫碎片恢復SQLserver數(shù)據(jù)庫

數(shù)據(jù)庫數(shù)據(jù)恢復—SQL Server數(shù)據(jù)庫出現(xiàn)823錯誤的數(shù)據(jù)恢復案例

評論