目錄啟動
sql語句初識
環境變數配置及系統服務製作
設定密碼
破解密碼
統一編碼
基本sql語句
"""
本質其實就是一款基於網路通訊的應用程式
那其實每個人都可以開發一款資料庫軟體 因為它僅僅就是乙個基於網路通訊的應用程式
也就意味著資料庫軟體其實有很多很多
關係型資料庫
mysql、oracle、db2、access、sql server
非關係型資料庫
redis、mongodb、memcache
"""# 關係型
1 資料之間彼此有關係或者約束
男生表和前女友表
2 儲存資料的表現形式通常是以**儲存
name password hobby
jason 123 學習
egon 123 女教練
tank 123 吃生蠔
每個欄位還會有儲存型別的限制
比如姓名只能存字串...
# 非關係型
儲存資料通常都是以k,v鍵值對的形式
"""
任何基於網路通訊的應用程式底層用的都是socket
-服務端
-基於socket通訊
-收發訊息
-sql語句
-客戶端
-基於socket通訊
-收發訊息
-sql語句
""" 如何解決語言溝通的障礙?
# 1 讓服務端相容所有的語言(乙個人精通多國語言)
# 2 採用統一的語言(sql語句)
"""
庫 》 資料夾
表 》 檔案
記錄 》 檔案內一行行的資料
name password hobby
jason 123 學習
egon 123 女教練
tank 123 吃生蠔
表頭 **的第一行字段
字段 name、password、hobby
"""
"""
在it界 一般都不會輕易的使用最新版本的軟體,因為新版本可能會出現各種問題
(你原本專案跑的好好的 非要畫蛇添足更新版本 然後專案奔潰)
小段子:
更新完沒事 那麼你還是乙個普通員工
更新完出事 那麼你就是一名"烈士"
"""# mysql有很多版本(5.6、5.7、8.0) 目前企業裡面用的比較多的還是5.6左右
參考**:
為了學習方便我們將服務端和客戶端都在本地啟動,後期到了公司服務端會專門跑在一台伺服器上,所有人基於網路連線服務端操作
mysql服務端與客戶端
"""
服務端mysqld.exe
客戶端mysql.exe
"""
注意
"""
在前期配置mysql的時候 cmd終端盡量以管理員的身份執行
windows+r 輸入cmd 進入的是普通使用者終端 有一些命令是無法執行的
搜尋cmd右鍵 以管理員身份執行
"""
"""
1 mysql中的sql語句是以分號作為結束的標誌
2 基本命令
show databases; 檢視所有的庫名
3 連線服務端的命令可以簡寫
mysql -uroot -p
4 當你輸入的命令不對 又不想讓服務端執行並返回報錯資訊 可以用\c取消
錯誤命令 \c
5 客戶端退出 退出命令加不加分號都可以執行
quit
exit
6 當你在連線服務端的時候 發現只輸入mysql也能連線
但是你不是管理員身份 而只是乙個遊客模式
"""
小知識點補充
"""
1 如何檢視當前具體程序
tasklist
tasklist |findstr mysqld
2 如何殺死具體程序(只有在管理員cmd視窗下才能成功)
taskkill /f /pid pid號
"""
環境變數配置
"""
每次啟動mysqld需要先切到對應的檔案路徑下才能操作太多繁瑣
將mysqld所在的檔案路徑新增到系統環境變數中
"""
還是繁瑣 需要起兩個cmd視窗 不好
將mysql服務端製作成系統服務(開機自啟動)
"""
檢視當前計算機的執行程序數
services.msc
將mysql製作成系統服務
mysqld --install
移除mysql系統服務
mysqld --remove
"""
"""
mysqladmin -uroot -p原密碼 password 新密碼
改命令直接在終端輸入即可 無序進入客戶端
mysqladmin -uroot -p123 password 123456
"""
出去玩了好幾個月,回來返現密碼忘了,死活進不去
"""
你可以將mysql獲取使用者名稱和密碼校驗的功能看成是乙個裝飾器
裝飾在了客戶端請求訪問的功能上
我們如果將該裝飾器移除 那麼mysql服務端就不會校驗使用者名稱和密碼了
"""# 1 先關閉當前mysql服務端
命令列的方式啟動(讓mysql跳過使用者名稱密碼驗證功能)
mysqld --skip-grant-tables
# 2 直接以無密碼的方式連線
mysql -uroot -p 直接回車
# 3 修改當前使用者的密碼
update mysql.user set password=password(123456) where user='root' and host='localhost';
"""真正儲存使用者表的密碼字段 儲存的肯定是密文
只有使用者自己知道明文是什麼 其他人都不知道 這樣更加的安全
密碼比對也只能比對密文
"""# 4 立刻將修改資料刷到硬碟
flush privileges;
# 5 關閉當前服務端 然後以正常校驗授權表的形式啟動
ps:大部分程式的業務邏輯其實都是增刪改查
"""
辛辛苦苦乙個月 只為了一條sql語句(將自己賬戶的錢修改一下)
"""
針對庫的增刪改查(資料夾)
# 增
create database db1;
create database db2 charset='gbk';
# 查show databases; # 查所有
show create database db1; # 查單個
# 改alter database db2 charset='utf8';
# 刪drop database db2;
針對表的增刪改查(檔案)
"""
在操作表(檔案)的時候 需要指定所在的庫(資料夾)
"""# 檢視當前所在的庫的名字
select database();
# 切換庫
use db1;
# 增create table t1(id int,name char(4));
# 查show tables; # 檢視當前庫下面所有的表名
show create table t1;
describe t1; # 支援簡寫 desc t1;
# 改alter table t1 modify name char(16);
# 刪drop table t1;
"""create table db2.t1(id int); 也可以用絕對路徑的形式操作不同的庫
"""
針對資料的增刪改查(一行行資料)
"""
一定要先有庫 有表 最後才能操作記錄
"""# 增
insert into t1 values(1,'jason');
insert into t1 values(1,'jason'),(2,'egon'),(3,'tank');
# 查select * from t1; # 該命令當資料量特別大的時候不建議使用
select name from t1;
# 改update t1 set name='dsb' where id > 1;
# 刪delete from t1 where id > 1;
delete from t1 where name='jason';
# 將表所有的資料清空
delete from t1;
初識資料庫
隨著vb學習任務的結束,我又迎來了新的學習任務 資料庫。剛接觸資料庫真是一頭霧水啊,看哪哪覺得陌生,那麼什麼是資料庫呢?下面蒐集的這些資料希望對我們初學者有所幫助。資料庫,顧名思義就是 資料的倉庫 計算機系統經常用來處理各種各樣的,大量的資料,比如使用計算機系統收集超市裡進出貨的清單,某地區的人口資...
初識資料庫
資料庫安裝 版本 postgres 配置環境變數,path中新增解壓後bin檔案路徑 安裝 執行cmd 解壓資料夾下 執行指令 initdb locale c e utf 8 d 安裝路徑 data 註冊服務 以管理員身份執行cmd 輸入指令 pg ctl register n 服務名稱 d 安裝路...
初識資料庫
一 什麼是資料庫?資料庫就是將資訊規範化並使之電子化,形成電子資訊 庫 以便利用計算機對這些資訊進行快速有效的儲存,檢索,統計與管理。資料庫起源於規範化 表 table 的處理。table 以按行按列形式組織及展現的資料 表中都有什麼呢?table 的構成和關於 table 的常用術語 資料庫與表是...