恢復內容開始 1、MySQL概述 1.什麼是資料庫? 存儲數據的倉庫 2.都有哪些公司在用資料庫? 金融機構、游戲公司、購物網站、論壇網站... 3.提供資料庫服務的軟體? 1.軟體分類 MySQL、Oracle、SQL_Server、DB2、MongoDB、MariaDB 2.生產環境中,如何選擇 ...
---恢復內容開始---
1、MySQL概述
1.什麼是資料庫?
存儲數據的倉庫
2.都有哪些公司在用資料庫?
金融機構、游戲公司、購物網站、論壇網站...
3.提供資料庫服務的軟體?
1.軟體分類
MySQL、Oracle、SQL_Server、DB2、MongoDB、MariaDB
2.生產環境中,如何選擇使用哪個資料庫軟體?
開源:MYSql,Mariadb,MongoDB
不開源:Oracle,DB2,SQL_Server
3.公司的類型:
1.商業資料庫:政府部門,金融機構
2.開源資料庫:游戲網站、購物網站、論壇網站.....
4、MySQL的特點
1.關係型資料庫
1.關係型資料庫特點
1.數據是以行和列(表格)的形式去存儲
2.表中的每一行叫一條記錄,每一列叫一個欄位
3.表和表之間的羅技關聯叫關係
2.示例
1.關係型資料庫存儲
表1 學生信息表
姓名 年齡 班級
星矢 25 三班
水冰月 29 六班
表2 班級信息表
班級 班主任
三班 大空翼
六班 松人
2.非關係型資料庫中存儲
{"姓名":"水冰月","年齡":"25"}
2、跨平臺
可以在Unix,Linux,Windows上運行資料庫服務;
3、支持多種編程語言
python,java,php,c/c++....
5、資料庫軟體。資料庫、數據倉庫的概念
1.資料庫軟體
一個軟體,看得見,可操作,實現資料庫的邏輯功能
2、資料庫
是一種邏輯概念,用來存放數據的倉庫,側重存儲
3、數據倉庫
從數據量上來說,比資料庫龐大的多,主要用於數據分析和數據挖掘
2、MySQL安裝
1.Ubuntu安裝
安裝服務端
sudo apt-get install mysql-server
安裝客戶端
sudo apt-get install mysql-client
Ubuntu安裝軟體
1、sudo apt-get update
訪問源列表中的每個網站,讀取軟體列表,保存到本地/var/lib/apt/lists
2、sudo apt-get upgrade
把本地已安裝軟體與剛下載的軟體列表進行對比,如果發現已安裝版本低則更新
3、sudo apt-get -f install
修複依賴關係
3、啟動和鏈接MySQL服務
1.服務端啟動
1.查看MySQL狀態
sudo /etc/init.d/mysql status
2、客戶端連接
1命令格式
mysql -h主機地址 -u用戶名 -p密碼
如:mysql -hlocalhost -uroot -p123456
2.本地連接可省略 -h選項
mysql -uroot -p123456
4、基本SQL命令
1.SQL命令的使用規則
1.每條命令的使用規則
1.每條命令必須以;結尾
2.SQL命令不區分字母大小寫
3.使用\c來終止當前命令的執行
2.庫的管理
1.庫的基本操作
1.查看已有庫
show databases;
2.創建庫(指定字元集)
create database 庫名 [character set utf8];
3.查看創建庫的語句(字元集)
show create database 庫名
4.查看當前所在庫
select database 庫名;
5.切換庫
use 庫名;
6.查看庫中已有庫
show tables;
7.刪除庫
drop database 庫名;
2、庫名的命名規則
1.數字、字母、下劃線。但不能使用純數字
2.庫名區分字母大小寫
3.不能使用特殊字元和mysql關鍵字
3、練習
1、創建庫testdb,指定字元集為 utf8
create database testdb character set utf8;
2、進入到庫 testdb
use testdb;
3、查看當前所在庫
select database();
4、創建庫 testdb2,指定字元集為 latin1
create database testdb2 character set latin1;
5、進入到庫 testdb2
use testdb2;
6、查看 testdb2 的字元集(查看創建庫的語句)
show create database testdb2;
7、刪除庫 testdb
drop database testdb;
8、刪除庫 testdb2
drop database testdb2;
3、表的管理
1.表的基本操作
1.創建表(指定字元集)
create table 表名(
欄位名 數據類型,
欄位名 數據類型,
...
);
2、查看已有表的字元集
show create table 表名;
3、查看表結構
desc 表名;
4、刪除表
drop table 表名;
5、Mac安裝mysql
1、cd
2、vi .bash_profile
添加 :PATH="$PATH":/usr/local/mysql/bin
3、source .bash_profile
6、表記錄管理
插入(insert)
1、insert into 表名 values(值1),(值2),...;
2、insert into 表名(欄位1,...) values(值1),...;
2、查詢(select)
1、select * from 表名 [where 條件];
2、select 欄位1,欄位名2 from 表名 [where 條件];
5、如何更改預設字元集
1、方法(通過更改MySQL配置文件實現)
2、步驟
1、獲取root許可權
sudo -i
2、cd /etc/mysql/mysql.conf.d/
3、備份 :cp mysqld.cnf mysqld.cnf.bak
4、subl mysqld.cnf
[mysqld]
character_set_server = utf8
5、重啟mysql服務
/etc/init.d/mysql restart
MAC:/etc/my.cnf
[mysqld]
character_set_server = utf8
6、客戶端把數據存儲到資料庫伺服器上的過程
1、連接到數據伺服器 mysql -uroot -p123456
2、選擇一個庫 use 庫名
3、創建表/修改表 update 表名...
4、斷開與資料庫連接 exit; | quit; | \q;
7、數據類型
1、數值類型
1、整型
1、int 大整型(4個位元組)
取值範圍 :2**32 - 1(42億多)
2、tinyint 微小整型(1個位元組)
1、有符號(signed預設) : -128 ~ 127
2、無符號(unsigned) : 0 ~ 255
age tinyint unsigned,
3、smallint 小整型(2個位元組)
4、bigint 極大整型(8個位元組)
2、浮點型
1、用法
欄位名 float(m,n) m->總位數 n->小數位位數
float(5,2)取值範圍? -999.99 ~ 999.99
2、decimal(最多顯示28個有效位)
1、decimal(m,n)
2、存儲空間(整數、小數分開存儲)
規則:將9的倍數包裝成4個位元組
示例:decimal(19,9)
整數部分:10/9=商1餘1 4位元組+1位元組=5位元組
小數部分:9/9=商1餘0 4位元組+0位元組=4位元組
占:9位元組
2、字元類型
1、char(定長)
1、取值範圍:1~255
2、varchar(變長)
1、取值範圍:1~65535
2、text / longtext(4G) / blob / longblob(4G)
3、char和varchar的特點
1、char :浪費存儲空間,性能高
2、varchar :節省存儲空間,性能低
---恢復內容結束---