1 """""" 2 """數據庫概念""" 3 """ 4 經歷階段: 5 1.隨意存到文件中 數據也是千差萬別的 6 2.軟件開發目錄規範 7 規定了數據存放的位置 8 ps:數據都是保存到本地的 9 例:單機遊戲 10 3.將保存數據的部分,保存到一個公共的位置 全部用戶涉及到數據相關 ,都必須來這個公共地方查找 11 """
1 """""" 2 """數據庫之MySQL""" 3 """ 4 本質就是一款基於網絡通訊的應用軟件 5 6 任何基於網絡通訊的軟件 底層都是socket 7 8 服務端: 9 -基於socket通訊 10 -收發消息 11 -SQL語句(一個公共的標準) 12 客戶端: 13 -基於socket通訊 14 -收發消息 15 -SQL語句(一個公共的標準) 16 ps:MySQL不但支持MySQL的客戶端來操做 也支持其餘編程語言直接操做 17 python java c++ php 語法都不同 18 """ 19 """ 20 DBMS:數據庫管理系統 21 關係型數據庫: 22 ( 23 1.數據和數據之間是有關聯和限制的 24 2.關係型數據庫,一般都是表結構. 25 也就意味着你在用關係型數據庫: 26 第一步:確認表結構, 27 28 字段有特定的類型 29 存名字 用字符串 30 存密碼 用數據 31 存生日 用日期 32 ) 33 MySQL 34 oracle(貴,通常企業用不起,維修費10幾萬,用的都是國企,好處:特別安全) 35 sqlite 36 db2 37 sql 38 server 39 非關係型數據庫: 40 ( 41 一般都是以k,v鍵值的形式存儲數據(即:字典) 42 ) 43 redis(目前最火), 44 mongodb(文檔型數據數據庫:很是接近關係型數據庫,應用爬蟲):存的時候是字典 45 memcache(被mongodb取代) 46 47 """
1 """""" 2 """ 3 MySQL 其實能夠把他當作一款支持遠程操做文件的軟件 4 """ 5 """ 6 庫 >>> 文件夾 7 表 >>> 文件 8 記錄 >>> 文件內一行行數據 叫作 一條記錄 9 10 ps: 11 表頭:就是表格的第一行數據 12 字段:字段名+字段類型 13 14 """
數據庫本質.pngphp
下載mysql1.png前端
mysql下載2.pngjava
mysql下載3.pngpython
mysql下載4.pngmysql
mysql下載5.pngc++
1 """""" 2 """ 3 安裝MySQL: 4 最新版本8.0 5 企業正在用5.5 5.6 5.7版本 6 在IT行業,不宜輕易嘗試最新版本(除非老闆有令) 7 8 9 下載以後 是將MySQL的服務端的客戶端都下載了下載下來了 10 11 解壓: 12 查看文件目錄:E:\數據庫\mysql-5.6.44-winx64 13 服務端: 14 mysqld 15 客戶端: 16 mysql 17 啓動mysql 18 E:\數據庫\mysql-5.6.44-winx64 19 1.切換到 bin 目錄下 20 2.執行mysqld 21 ps:作前期MySQL配置的時候 終端(cmd)建議你以管理員身份運行 22 23 windows + r 啓動的普通用戶 (啓動cmd快捷鍵) 24 mysql在初始登陸的時候 是沒有密碼的 直接回車便可 25 26 mysql中 sql語句 是以分號(;)結束的 不敲分號 默認你沒有輸入完 27 客戶端還會讓你繼續輸入 28 """
1 """""" 2 """1.客戶端登陸""" 3 """ 4 語法: 5 cmd: mysql -h+IP -P+PORT -u+用戶名 -p+密碼(密碼通常不在這寫,不安全); 6 Enter password:密碼(這裏寫密碼,不須要分號) 7 簡寫(本地): 8 mysql - u+用戶名 -p 9 Enter password:密碼 10 例: 11 cmd: mysql -h127.0.0.1 -P3306 -uroot -p 12 Enter password:llx20190411 13 14 ps:若是不輸入用戶名和密碼 默認是訪客模式登錄 所能用到的功能不多 15 16 """ 17 """2.客戶端退出登陸""" 18 ''' 19 exit; 20 quit; 21 ''' 22 """3.MySQL SQL 語句""" 23 """ 24 查看全部數據庫: show databases; 25 查看某個進程: tasklist |findstr 名稱 26 27 關閉進程(殺死進程): taskkill /F /PID 進程號 28 ps:注意間距,不然會報錯 29 30 """
1 """""" 2 """1.製做環境變量""" 3 """ 4 將啓動文件所在的路徑添加到系統的環境變量. 5 6 ps:配置完成後 必定要從新啓動 mysql 服務端 及 cmd終端 7 8 """ 9 """2.將mysqld製做成系統服務(即:mysqld是啓動(自啓)狀態)""" 10 ''' 11 製做系統服務 你的 cmd終端 必定要是管理員身份(目的:避免後續的許多弊端和麻煩) 12 SQL語句: 13 # 裝 14 cmd:mysqld --install 15 return(返回): Service successfully installed. 16 例: 17 E:\數據庫\mysql-5.6.44-winx64\bin>mysqld --install 18 Service successfully installed. 19 ps:文件夾爲中文時,在中文中跳轉到指定目錄下須要 +cd/中文文件夾: 20 # 刪 21 C:\Windows\system32>sc delete mysql 22 [SC] DeleteService 成功 23 24 # 啓動 25 C:\Windows\system32>net start mysql 26 請求的服務已經啓動。 27 28 29 # 中止 30 C:\Windows\system32>net stop mysql 31 MySQL 服務正在中止. 32 MySQL 服務已成功中止。 33 '''
1 """""" 2 """修改管理員密碼: 3 """ 4 """ 5 1.知道密碼: 6 1)默認無密碼: 7 SQL語句:mysqladmin -p(無密碼) -u+用戶 password + (中間須要有空格)新密碼 8 2)有密碼.密碼修改 9 10 使用 mysqladmin 這個工具 11 12 SQL語句:mysqladmin -p+舊密碼 -u+用戶 password + (中間須要有空格)新密碼 13 實例: 14 mysqladmin -pllx20190411 -uroot password llx20190412 15 16 17 C:\Windows\system32>mysqladmin -pllx20190411 -uroot password llx20190412 18 Warning: Using a password on the command line interface can be insecure. 19 2.忘記密碼:即破解密碼 20 現將已經啓動的服務端停掉 21 22 1.跳過用戶名和密碼的驗證功能啓動服務端 23 mysql --skip-grant-tables 24 25 2.修改管理員用戶對應的密碼 26 update mysql.user set password=password("llx20190411") where user='root' and host='localhost'; 27 ps:password=password() 參數爲密文, 整型不須要加字符串,英文須要加""轉爲字符串使用 28 3.關閉當前服務器 從新以校驗用戶密碼的方式 29 4.正常以用戶名密碼的方式鏈接mysql服務端 30 31 32 """
2.啓動服務器後,跳過受權表,即跳過密碼.pngredis
1 """""" 2 """配置文件""" 3 """ 4 \s 查看 mysql服務端簡單配置 5 一般狀況下配置文件的簡單後綴都是ini結尾 6 7 mysql自帶的配置文件不要修改 8 可是你能夠新建一個配置文件 my.ini 9 mysql 服務端 在啓動就會自動加載你的my.ini配置文件內的配置 10 11 修改完 配置文件 以後 須要先將服務器中止從新啓動 纔會生效 12 13 修改了配置文件必定要重啓服務器 14 """
1.查詢配置文件.pngsql
2.解決服務端編碼不一致問題.pngmongodb
3.經過新增配置文件修改編碼方式成功.png數據庫
4.新增配置文件替換編碼方式 - 即設置mysql登陸快捷方式.png
1 """""" 2 """庫: 相似於文件夾""" 3 """ 4 # 增 5 SQL語句: create database 數據庫名; 6 例: 7 mysql> create database db11; 8 Query OK, 1 row affected (0.00 sec) 9 10 # 查 11 SOL語句: 查全部庫: show databases; 12 例: 13 mysql> show databases; 14 +--------------------+ 15 | Database | 16 +--------------------+ 17 | information_schema | 18 | db1 | 19 | db11 | 20 +--------------------+ 21 13 rows in set (0.00 sec) 22 (單個)查指定庫: show create database db11 23 24 例: 25 mysql> show create database db11; 26 +----------+---------------------------------------------------------------+ 27 | Database | Create Database | 28 +----------+---------------------------------------------------------------+ 29 | db11 | CREATE DATABASE `db11` /*!40100 DEFAULT CHARACTER SET utf8 */ | 30 +----------+---------------------------------------------------------------+ 31 1 row in set (0.00 sec) 32 33 # 改 34 SQL語句:alter database db11 charset='gbk'; # 修改編碼方式 35 例: 36 mysql> alter database db11 charset='gbk'; 37 Query OK, 1 row affected (0.00 sec) 38 39 證實: 40 41 mysql> show create database db11; 42 +----------+--------------------------------------------------------------+ 43 | Database | Create Database | 44 +----------+--------------------------------------------------------------+ 45 | db11 | CREATE DATABASE `db11` /*!40100 DEFAULT CHARACTER SET gbk */ | 46 +----------+--------------------------------------------------------------+ 47 1 row in set (0.00 sec) 48 49 # 刪 50 drop database db11; # 刪庫(跑路) 51 例: 52 mysql> drop database db11; 53 Query OK, 0 rows affected (0.12 sec) 54 驗證: 55 mysql> show create database db11; 56 ERROR 1049 (42000): Unknown database 'db11' 57 """
1 """""" 2 """表:相似文件夾""" 3 ''' 4 在建立表的時候 須要 先 指定 庫; 5 SQL語句: use 庫名 # 指定庫名 6 7 例: 8 mysql> use db11 9 Database changed 10 11 SQL語句: select database(); # 查詢當前所在的庫 12 mysql> select database(); 13 +------------+ 14 | database() | 15 +------------+ 16 | db11 | 17 +------------+ 18 1 row in set (0.00 sec) 19 ''' 20 """ 21 # 增 22 SQL語句:create table userinfo(id int,name char); 23 例: 24 mysql> create table userinfo(id int,name char); 25 Query OK, 0 rows affected (0.47 sec) 26 27 # 查 28 SQL語句: 29 show tables; # 查看某庫下全部的表 30 31 例: 32 mysql> show tables; 33 +----------------+ 34 | Tables_in_db11 | 35 +----------------+ 36 | userinfo | 37 +----------------+ 38 1 row in set (0.00 sec) 39 40 SQL語句: 41 show create table userinfo; # 查看指定表 42 例: 43 mysql> show create table userinfo; 44 +----------+---------------------------------------------------------------------------------------------------------------------------+ 45 | Table | Create Table | 46 +----------+---------------------------------------------------------------------------------------------------------------------------+ 47 | userinfo | CREATE TABLE `userinfo` ( 48 `id` int(11) DEFAULT NULL, 49 `name` char(1) DEFAULT NULL 50 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 | 51 +----------+---------------------------------------------------------------------------------------------------------------------------+ 52 1 row in set (0.00 sec) 53 54 SQL語句: 55 # 查詢表結構 desc userinfo; <==> describe userinfo 56 例: 57 mysql> desc userinfo; 58 +-------+---------+------+-----+---------+-------+ 59 | Field | Type | Null | Key | Default | Extra | 60 +-------+---------+------+-----+---------+-------+ 61 | id | int(11) | YES | | NULL | | 62 | name | char(1) | YES | | NULL | | 63 +-------+---------+------+-----+---------+-------+ 64 2 rows in set (0.01 sec) 65 66 mysql> describe userinfo; 67 +-------+---------+------+-----+---------+-------+ 68 | Field | Type | Null | Key | Default | Extra | 69 +-------+---------+------+-----+---------+-------+ 70 | id | int(11) | YES | | NULL | | 71 | name | char(1) | YES | | NULL | | 72 +-------+---------+------+-----+---------+-------+ 73 2 rows in set (0.01 sec) 74 # 改 75 SQL語句:alter table userinfo modify name char(32) # 修改指定表的指定行的字節數 76 77 例: 78 mysql> alter table userinfo modify name char(32); 79 Query OK, 0 rows affected (0.62 sec) 80 Records: 0 Duplicates: 0 Warnings: 0 81 82 驗證: 83 mysql> desc userinfo; 84 +-------+----------+------+-----+---------+-------+ 85 | Field | Type | Null | Key | Default | Extra | 86 +-------+----------+------+-----+---------+-------+ 87 | id | int(11) | YES | | NULL | | 88 | name | char(32) | YES | | NULL | | 89 +-------+----------+------+-----+---------+-------+ 90 2 rows in set (0.01 sec) 91 92 # 刪 93 SQL語句:drop table userinfo; # 刪掉指定表 94 例: 95 mysql> drop table userinfo; 96 Query OK, 0 rows affected (0.15 sec) 97 98 驗證: 99 mysql> show create table userinfo; 100 ERROR 1146 (42S02): Table 'db11.userinfo' doesn't exist 101 """
1 """""" 2 """記錄:相似一條條數據""" 3 ''' 4 1.先建立一個庫|指定一個已存在的庫 5 創庫: create database 庫名 6 切換到該庫下: use 庫名 7 2.建立表: create table 表名(列名1 類型1,...,列名n 類型n) 8 9 10 3.而後再操做記錄 以下 11 ''' 12 """ 13 # 增 14 SQL語句:insert into userinfo values(1,'jason',123); # 插入單條數據 15 例: 16 mysql> insert into userinfo values(1,'llx',123); 17 Query OK, 1 row affected (0.34 sec) 18 19 SQL語句:insert into userinfo values(2,'llw',123),(3,'wyf',123); 20 例: 21 mysql> insert into userinfo values(2,'llw',123),(3,'wyf',123); 22 Query OK, 2 rows affected (0.37 sec) 23 Records: 2 Duplicates: 0 Warnings: 0 24 25 # 查 26 SQL語句:select * from userinfo; # 查看錶中全部的記錄: 27 例: 28 mysql> select * from userinfo; 29 +------+------+----------+ 30 | id | name | password | 31 +------+------+----------+ 32 | 1 | llx | 123 | 33 | 2 | llw | 123 | 34 | 3 | wyf | 123 | 35 +------+------+----------+ 36 3 rows in set (0.00 sec) 37 38 SQL語句:select 列名 from userinfo; # 查詢表中指定列的數據 39 40 例: 41 mysql> select * from userinfo; 42 +------+------+----------+ 43 | id | name | password | 44 +------+------+----------+ 45 | 1 | llx | 123 | 46 | 2 | llw | 123 | 47 | 3 | wyf | 123 | 48 +------+------+----------+ 49 3 rows in set (0.00 sec) 50 51 SQL語句:select id name from userinfo where id=1 or name = 'wyf'; # 符合篩選條件的記錄 52 例: 53 mysql> select * from userinfo where id = 1 or name = 'wyf'; 54 +------+------+----------+ 55 | id | name | password | 56 +------+------+----------+ 57 | 1 | llx | 123 | 58 | 3 | wyf | 123 | 59 +------+------+----------+ 60 2 rows in set (0.00 sec) 61 62 mysql> select id name from userinfo where id = 1 or name = 'wyf'; 63 +------+ 64 | name | 65 +------+ 66 | 1 | 67 | 3 | 68 +------+ 69 2 rows in set (0.00 sec) 70 # 改 71 SQL語句:update userinfo set name='llxdd' where id=1; # 修改一個字段信息 72 例: 73 mysql> update userinfo set name = 'llxdd' where id = 1; # 修改數據的多個字段 74 Query OK, 1 row affected (0.38 sec) 75 Rows matched: 1 Changed: 1 Warnings: 0 76 77 SQL語句:update userinfo set name='llwdd' and password=456 where id=2; 78 例: 79 mysql> update userinfo set name = 'llwdd'and password = 456 where id = 2; 80 Query OK, 1 row affected, 1 warning (0.36 sec) 81 Rows matched: 1 Changed: 1 Warnings: 1 82 83 # 刪 84 SQL語句:delete from userinfo where id = 1; # 刪除符合條件的指定字段 85 例: 86 mysql> delete from userinfo where id = 1; 87 Query OK, 1 row affected (0.10 sec) 88 89 SQL語句:delete from userinfo; # 將表中數據所有刪除 90 例: 91 mysql> delete from userinfo; 92 Query OK, 2 rows affected (0.11 sec) 93 """
1 mysql 6day 這週週五-下週週五 週末寫優酷 2 優酷 一週 3 前端 7天 4 Django 10天 5 bbs 5天 6 7 今日內容 8 01 數據庫概念.mp4 9 02 數據庫安裝及基本使用.mp4 10 03 配置環境變量及製做系統服務.mp4 11 04 修改密碼.mp4 12 05 破解密碼.mp4 13 06 配置文件相關操做.mp4 14 07 庫的增刪改查.mp4 15 08 表的增刪改查.mp4 16 09 數據的增刪改查.mp4