認識mysql(1)

python_shapao發表於2018-08-19

—恢復內容開始—

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 :節省儲存空間,效能低

 

 

 

 

 

 

 

 

      

—恢復內容結束—

相關文章