一 什么是數(shù)據(jù)庫 存儲數(shù)的倉庫 將數(shù)據(jù)有組織,按照特定的格式存儲在介質(zhì)上叫數(shù)據(jù)庫 二 比較多個數(shù)據(jù)庫 1.Oracle 最好的數(shù)據(jù)庫,沒有之一 2.sqlserver 最好的數(shù)據(jù)庫(windows) 3.mysql 開源sun公司 甲骨文(oracle) 4.maria db 三 sql語言 a)sql 結(jié)構(gòu)化查詢語句數(shù)據(jù)庫管理系統(tǒng)通過sql語句管理數(shù)據(jù)庫中的數(shù)據(jù) 1.數(shù)據(jù)定義語言(ddl) 用來定義和管理數(shù)據(jù)對象 包含數(shù)據(jù)庫 數(shù)據(jù)表 例如:create drop 2.數(shù)據(jù)操作語言(dml) 用來操作數(shù)據(jù)庫對象中的所有數(shù)據(jù) 例如:insert update delete 3.數(shù)據(jù)查詢語句(dql) 用來查詢數(shù)據(jù)對象中的所有數(shù)據(jù) 例如:select 4.數(shù)據(jù)控制語言(dcl) 用來管理數(shù)據(jù)庫的語言 包含賦予權(quán)限和更改權(quán)限 修改數(shù)據(jù)庫 例如 grant 等 四 為什么我們要學(xué)習(xí)mysql 1 mysql 免費 2 跨平臺 3 功能強大且方便 五 web開發(fā)原理 瀏覽器 服務(wù)器 php 數(shù)據(jù)庫 六 登錄和退出mysql服務(wù)器 1.登錄 windows鍵 + r 2.運行輸入框 3.運行輸入框 1) mysql -hlocalhost -uroot -p123456 2) mysql -hlocalhost -uroot -p password:****** 4.第二種進(jìn)入到mysql控制臺 使用wamp ->mysql->mysql console ->輸入密碼 ,回車即可 5.mysql -h local -uroot -p -h 主機(jī)名 -u 用戶名 -p 密碼 主機(jī)名:就是你要連接數(shù)據(jù)庫的所在 ip localhost是本地主機(jī)名 只能本地使用 mysql -h 192.168.40.111 用戶名:root 數(shù)據(jù)庫最高用戶 超級用戶 密碼: 密碼默認(rèn)值為空 6.如果在運行框中輸入內(nèi)容找不到文件 ,那么請進(jìn)行下面操作 打開計算機(jī)郵件-》屬性 -》高級設(shè)置-》環(huán)境變量-》path選項加入mysql\bin 路徑 保存重啟電腦生效 7.退出 1)exit 2) \q 注意: 1.每個sql命令都需要使用分號來結(jié)尾 2.可以將一行命令拆分成多行 3.可以通過\c來取消本行命令 4.可以通過exit 或者 \q 退出 8.可以通過一些快捷鍵進(jìn)行使用help 1)將查詢結(jié)果立起來 \G 2) 取消當(dāng)前未完成的操作 \c 3) 退出當(dāng)前客戶端 \q 4) 顯示當(dāng)前服務(wù)器狀態(tài) \s 5) 顯示幫助信息 \h 七 查看數(shù)據(jù)庫及創(chuàng)建數(shù)據(jù)庫 SHOW DATABASE 查看數(shù)據(jù)庫 [] 中括號代表可寫不可以寫 ,不是必須有的內(nèi)容 CEREATE DATABASE [IF NOT EXISTS] 數(shù)據(jù)庫名(小寫) 如果創(chuàng)建的數(shù)據(jù)庫不存在,我們則創(chuàng)建數(shù)據(jù)庫 八 選擇數(shù)據(jù)庫及查看數(shù)據(jù)庫中的數(shù)據(jù)庫表 USE 數(shù)據(jù)庫名; 選擇數(shù)據(jù)庫 如果不使用上面命令會出現(xiàn)下面的報錯代碼 ERROR 1046(3D000):No database selected SHOW TABLES; 查看數(shù)據(jù)庫中的表 九刪除數(shù)據(jù)庫 DROP DATAFILES [IF EXISTS] 數(shù)據(jù)庫名 如果存在,我們就刪除 注意:1.mysql數(shù)據(jù)庫中命令不區(qū)分大小寫 2.每創(chuàng)建一個數(shù)據(jù)庫 ,就會在data目錄下創(chuàng)建一個對應(yīng)名字的文件夾 3.在windows 下面數(shù)據(jù)庫名稱也是不區(qū)分大小寫的,但是在linux下 數(shù)據(jù)庫名稱嚴(yán)格區(qū)分大小寫 十 創(chuàng)建一個簡單的數(shù)據(jù)庫表 CREATE TABLE IF NOT EXISTS user( id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255) NOT NULL, sex TINYINT NOT NULL DEFAULT 1, age TINYINT NOT NULL DEFAULT 0, )ENGINE=MyISAM DEFAULT CHARSET=utf8; 十一 表中的數(shù)據(jù)簡單的管理(增刪改查) 1.添加數(shù)據(jù) INSERT INTO 表名 VALUES (值) 2.查詢數(shù)據(jù) SELECT * FROM 表名; 3.修改數(shù)據(jù) UPDATE 表名 SET 你要修改內(nèi)容 WHERE id=數(shù)字; 4.刪除數(shù)據(jù) DELETE FROM 表名 WHERE id=數(shù)字; where id= 后面必須加數(shù)字,否則就是全部刪除; 十二 新建普通用戶 GRANT 權(quán)限 ON 庫.表 TO '用戶名'@'主機(jī)名' IDENTIFIED BY '密碼'; *代表所有,前面* 代表所有庫,后面*代表所有表 @前面寫用戶名 后面寫的是主機(jī)名 主機(jī)名 只有本地是localhost ,如果是別的主機(jī) 主機(jī)名就是別的主機(jī)的ip地址 如192.168.xx.xx 重點: GRANT 語句不僅可以創(chuàng)建用戶,也可以修改用戶密碼,而且可以設(shè)置用戶權(quán)限,因此GRANT語句是mysql中 非常重要的語句 十三 查看所有用戶 SELECT user ,host FROM mysql.user 十四 刪除普通用戶 DROP USER 用戶名@主機(jī)名; 十五 root 用戶修改自己的密碼 SET PASSWORD =PASSWORD('新密碼'); 注意:新密碼必須使用PASSWORD() 加密函數(shù)進(jìn)行加密 十六 修改普通用戶密碼 SET PASSWORD FOR '用戶名'@'主機(jī)名'=PASSWORD('新密碼'); 十七 授權(quán) GRANT SELECT ,INSERT,UPDATE,DELETE ON *.* TO '用戶名'@'主機(jī)名' IDENTIFIED BY '密碼' GRANT:被授權(quán)的用戶可以將這些權(quán)限賦值給別的用戶 十八 報錯 ERROR 1049 (42000):Unknown database 'ss22:' 沒有ss22:這個數(shù)據(jù)庫 十九 收回權(quán)限 1.查看權(quán)限 SHOW GRANT FOR '用戶名'@'主機(jī)名' 2.收回權(quán)限 REVOKE 要收回的權(quán)限 ON 庫名.表名 FROM '用戶名'@'主機(jī)名' 如果你收回的用戶出現(xiàn)下面報錯說明收回成功 ERROR 1142 (42000):DELETE command denied to user 'litao'@'localhost' for table 'user' 二十 數(shù)據(jù)備份 1.需要在cmd命令行中實現(xiàn) 2.windows+r 在運行框中輸入cmd 3.mysqldump -u 用戶名 -p 庫名 >保存路徑 4.例如:mysqldump -uroot -p ss22>c:\ss22.sql 5.如果輸入上面內(nèi)容出現(xiàn)下面代碼 拒絕訪問 6.開始-》所有程序-》附件-》命令提示符 是你用超級管理員身份打開 二十一 還原數(shù)據(jù) 首先必須準(zhǔn)備一個空的數(shù)據(jù)庫 ss22 mysql -u 用戶名 -p 庫名 <保存地址 mysql -uroot -p ss22<c:\ss22.sql 重點 語句后別寫分號 |
|
來自: 醉人說夢 > 《自學(xué)課程》