MySQL數據庫初識

認識數據庫

1 什麼是數據(Data)

描述事物的符號記錄稱爲數據,描述事物的符號既能夠是數字,也能夠是文字、圖片,圖像、聲音、語言等,數據由多種表現形式,它們均可以通過數字化後存入計算機python

在計算機中描述一個事物,就須要抽取這一事物的典型特徵,組成一條記錄,就至關於文件裏的一行內容,如:mysql

1 安文,男,23,1995,山西

單純的一條記錄並無任何意義,若是咱們按逗號做爲分隔,依次定義各個字段的意思,至關於定義表的標題redis

id,name,sex,age,birth,born_addr# 字段/列名
1 安文,男,23,1995,山西 # 數據

這樣咱們就能夠了解alex,性別不詳,年齡83歲,出生於1935年,住的養老院是 老男孩sql

2 什麼是數據庫(DataBase,簡稱DB)

數據庫即存放數據的倉庫,只不過這個倉庫是在計算機存儲設備上,並且數據是按必定的格式存放的mongodb

過去人們將數據存放在文件櫃裏,如今數據量龐大,已經再也不適用數據庫

數據庫是長期存放在計算機內、有組織、可共享的數據集合。編程

數據庫中的數據按必定的數據模型組織、描述和儲存,具備較小的冗餘度、較高的數據獨立性和易擴展性,並可爲各類 用戶共享服務器

3 什麼是數據庫管理系統(DataBase Management System 簡稱DBMS)

在瞭解了Data與DB的概念後,如何科學地組織和存儲數據,如何高效獲取和維護數據成了關鍵oracle

這就用到了一個系統軟件---數據庫管理系統編程語言

如MySQL、Oracle、SQLite、Access、MS SQL Server

mysql主要用於大型門戶,例如搜狗、新浪等,它主要的優點就是開放源代碼,由於開放源代碼這個數據庫是免費的,他如今是甲骨文公司的產品。
oracle主要用於銀行、鐵路、飛機場等。該數據庫功能強大,軟件費用高。也是甲骨文公司的產品。
sql server是微軟公司的產品,主要應用於大中型企業,如聯想、方正等。

數據庫管理員 DBA(Database Administrator)

4 數據庫服務器、數據管理系統、數據庫、表與記錄的關係(重點)

記錄:1 朱葛 13234567890 22(多個字段的信息組成一條記錄,即文件中的一行內容)

表:userinfo,studentinfo,courseinfo(即文件)

數據庫:db(即文件夾)

數據庫管理系統:如mysql(是一個軟件)

數據庫服務器:一臺計算機(對內存要求比較高)

總結:

數據庫服務器-:運行數據庫管理軟件

數據庫管理軟件:管理-數據庫

數據庫:即文件夾,用來組織文件/表

表:即文件,用來存放多行內容/多條記錄

5 數據庫管理技術的發展歷程(瞭解)

一 人工管理階段

20世紀50年代中期之前,計算機主要用於科學計算。

當時的硬件水平:外存只有紙帶、卡片、磁帶,沒有磁盤等直接存取的存儲設備

當時的軟件情況:沒有操做系統,沒有管理數據的軟件,數據的處理方式是批處理。

人工管理數據具備如下特色:

1 數據不保存:計算機主要用於科學計算,數據臨時用,臨時輸入,不保存

2 應用程序管理數據:數據要有應用程序本身管理,應用程序須要處理數據的邏輯+物理結構,開發負擔很重

3 數據不共享:一組數據只對應一個程序,多個程序之間涉及相同數據時,必須各自定義,形成數據大量冗餘

4 數據不具備獨立性:數據的邏輯結構或物理結構發生變化後,必須對應用程序作出相應的修改,開發負擔進一步加大

初識MYSQL

mysql瞭解

數據庫管理軟件分類

  管理數據的工具備不少種,不止mysql一個。關於分類其實能夠從各個緯度來進行劃分,可是咱們最常使用的分類仍是根據他們存取數據的特色來劃分的,主要分爲關係型和非關係型。

  能夠簡單的理解爲,關係型數據庫須要有表結構非關係型數據庫是key-value存儲的,沒有表結構

關係型:如sqllite,db2,oracle,access,sql server,MySQL,注意:sql語句通用
非關係型:mongodb,redis,memcache

mysql

  MySQL是一個關係型數據庫管理系統,由瑞典MySQL AB 公司開發,目前屬於 Oracle 旗下產品。MySQL 是最流行的關係型數據庫管理系統之一,在 WEB 應用方面,MySQL是最好的 RDBMS (Relational Database Management System,關係數據庫管理系統) 應用軟件。

  MySQL是一種關係數據庫管理系統,關係數據庫將數據保存在不一樣的表中,而不是將全部數據放在一個大倉庫內,這樣就增長了速度並提升了靈活性。

  MySQL所使用的 SQL 語言是用於訪問數據庫的最經常使用標準化語言。MySQL 軟件採用了雙受權政策,分爲社區版和商業版,因爲其體積小、速度快、整體擁有成本低,尤爲是開放源碼這一特色,通常中小型網站的開發都選擇 MySQL 做爲網站數據庫。

初識sql語句

  

#進入mysql客戶端
$mysql
mysql> select user();  #查看當前用戶
mysql> exit     # 也能夠用\q quit退出

# 默認用戶登錄以後並無實際操做的權限
# 須要使用管理員root用戶登錄
$ mysql -uroot -p   # mysql5.6默認是沒有密碼的
#遇到password直接按回車鍵
mysql> set password = password('root'); # 給當前數據庫設置密碼

# 建立帳號
mysql> create user 'eva'@'192.168.10.%'   IDENTIFIED BY '123';# 指示網段
mysql> create user 'eva'@'192.168.10.5'   # 指示某機器能夠鏈接
mysql> create user 'eva'@'%'                    #指示全部機器均可以鏈接  
mysql> show grants for 'eva'@'192.168.10.5';查看某個用戶的權限 
# 遠程登錄
$ mysql -uroot -p123 -h 192.168.10.3

# 給帳號受權
mysql> grant all on *.* to 'eva'@'%';
mysql> flush privileges;    # 刷新使受權當即生效

# 建立帳號並受權
mysql> grant all on *.* to 'eva'@'%' identified by '123'

SQL : 結構化查詢語言(Structured Query Language)簡稱SQL(發音:/ˈes kjuː ˈel/ "S-Q-L"),是一種特殊目的的編程語言,是一種數據庫查詢和程序設計語言,用於存取數據以及查詢、更新和管理關係數據庫系統

  SQL語言主要用於存取數據、查詢數據、更新數據和管理關係數據庫系統,SQL語言由IBM開發。SQL語言分爲3種類型:

  一、DDL語句 數據庫定義語言: 數據庫、表、視圖、索引、存儲過程,例如CREATE DROP ALTER

  二、DML語句 數據庫操縱語言: 插入數據INSERT、刪除數據DELETE、更新數據UPDATE、查詢數據SELECT

  三、DCL語句 數據庫控制語言: 例如控制用戶的訪問權限GRANT、REVOKE

1. 操做文件夾(庫)
   增:create database db1 charset utf8;
   查:show databases;
   改:alter database db1 charset latin1;
   刪除: drop database db1;


2. 操做文件(表)
   先切換到文件夾下:use db1
   增:create table t1(id int,name char);
   查:show tables;
   改:alter table t1 modify name char(3);
      alter table t1 change name name1 char(2);
   刪:drop table t1;
    

3. 操做文件中的內容(記錄)
   增:insert into t1 values(1,'egon1'),(2,'egon2'),(3,'egon3');
   查:select * from t1;
   改:update t1 set name='sb' where id=2;
   刪:delete from t1 where id=1;

   清空表:
       delete from t1; #若是有自增id,新增的數據,仍然是以刪除前的最後同樣做爲起始。
       truncate table t1;數據量大,刪除速度比上一條快,且直接從零開始,

*auto_increment 表示:自增
*primary key 表示:約束(不能重複且不能爲空);加速查找
相關文章
相關標籤/搜索