數據庫介紹
什麼是數據庫
數據庫用於數據保存,相對文件,有以下優點:
- 數據庫保存數據更爲安全
- 有利於查詢和對數據的管理
- 可以存放海量的數據
- 可以在程序中控制
數據庫:高效的存儲和處理數據的介質(介質主要是兩種:磁盤和內存)
數據庫分類
- SQL Server:.Net程序員最愛,適合處理中大型項目。
- Oracle:Java程序員使用,處理中大型項目,適合處理複雜的業務邏輯,對併發來說不如MySQL。
- MySQL:適合處理中大型項目。併發性好,但是不適合做複雜的業務。主要用在電商,SNS,論壇。對簡單的SQL處理效果好。
- DB2:適合處理海量數據,大型項目,功能強悍。
- informix:安全性強。
MySQL的基本操作
啓動和關閉數據庫
Windows:service mysqld start/stop
CentOS 7:systemctl start/stop mysqld.service
沒有錯誤提示即爲操作成功。
連接mysql數據庫
mysql [-h 主機] -u 用戶 -p
- 如果沒有寫-h 127.0.0.1默認是連接本地
- 如果需要登錄到另外一個mysql,則需要修改配置,一般情況下不遠程登錄
查看已建立的數據庫
mysql>show databases;
創建和刪除數據庫
創建數據庫
mysql>create database [if not exist ] 庫名[default] charset=utf8 [default] collate utf8_genneral_ci;
創建規則:字符集-utf8 校驗規則-utf8_general_ci
也可以使用默認方式進行數據庫的創建:
mysql>create database 庫名;
接下來使用命令來查看數據庫的創建規則:
mysql>show create database 庫名;
這裏能夠看到,系統的默認字符集就是utf8
字符集和校驗規則
字符集
不同的字符集適合不同的語言。例如使用中文就是utf8字符集。
校驗規則
在utf8字符集中包含兩種校驗規則:utf8_general_ci(不區分大小寫) 和 utf8_general_bin(區分大小寫)
不同的校驗規則會影響數據的排序。
刪除數據庫*(不輕易嘗試 )
mysql>database [if exists] 表名;
使用數據庫
mysql>use 庫名;
創建和刪除表
創建表
mysql>create table 表名(
字段1 列類型1,
字段2 列類型2。
…
字段n 列類型n
);
刪除表
mysql>drop table [if exists] 表名;
查看錶結構
mysql>desc 表名;
查看錶中數據
mysql>select * from 表名;
由於我們還沒有對錶進行插入數據,所以顯示Empty set.
修改表
修改表名
mysql>alter table 表名 rename to 新的表名;
修改字符集
mysql>alter table 表名 charset=gbk;
添加字段
mysql>alter table 表名 add 字段名 字段類型 comment ‘備註’ after 字段名;
修改字段名
mysql>alter table 表名 change 原字段名 新字段名 列類型;—新字段需要完整的定義
修改列類型
mysql>alter table 表名 modify 字段名 新的列類型;
刪除字段(刪除字段一定要謹慎,刪除字段及其對應的列數據都會刪除 )
mysql>alter table 表名 drop 字段名;
數據庫的備份和恢復
備份數據庫絕對不失爲一個好習慣
備份
[root@localhost home]# mysqldump -u root -p 數據庫的名字(mytest)> 路徑(/root/...)/保存數據庫的名字(mytest.sql)
(./ 路徑爲保存在桌面)
恢復
- 首先,進入mysql控制檯
- 創建一個數據庫,名字最好和備份文件相同
- use 創建的空數據庫
- source 保存備份文件的路徑(/root/../mytest.sql)