mysql基礎

  mysql 作為一款開源軟件,擁有良好的性能服務於各中小企業,小介紹下幾個重要的數據庫產品及使用的地方
 大型企業
   oracle
   sybase
   informix
   DB2
  中小型企業
   SQL Server
   MYSQL
   PostgreSQL 支持集群和實務較好,恢復機制不行
       EnterpriseDB
mirror.souhu.com
MYSQL
   MariaDB 原mysql開發者在mysql被oracle收購後開發的
   企業版
   社區版
mysql的工作模式如下圖


 
作為LAMP重要組成的mysql ,其配置文件的查找順序:
/etc/my.cnf
 /etc/mysql/my.cnf
 $MYSQL_HOME/my.cnf
 /path/to/file when default-extra-file=/path/to/file is specified
 ~/.my.cnf
 mysql 常用選項
     \c   取消本條語句
     \d   修改結束符   
     \g   忽略默認的結束符,直接送服務器端處理
     \G  
  
數據庫管理
    
   mysqladmin
       mysqladmin [options] command [arg] [command[art]]…
       mysqladmin -h host ping  測試服務器工作情況 
                          debug 錯誤日志在數據文件下
       mysqladmin create databasename
       mysqladmin drop databasename
       mysqladmin extended-status  顯示運行狀態
       mysqladmin flush-logs
                    flush-status  重置變量的值
                    flush-tables  關閉當前打開表的句柄
       mysqladmin flush-privileges   刷新權限
       mysqladmin processlist 顯示進程列表
       mysqladmin start-slave
                  version 顯示版本號和當前信息
                  status  顯示當前數據庫信息 –sleep num –count num
       mysqladmin variables  顯示變量
      
     top -d 3 -n 2
mysql> show variables like ‘%變量%’;
       show variables like 'datadir';
       show status;== mysqladmin extended-status
       show processlist  ==  mysqladmin processlist 顯示進程列表
       show variables  == mysqladmin variables
時間類型
    date  yy-mm-dd
    time  hhmmss
    datetime yymmddhhmmss
    year 2011 11
 
類型
   字符                     字符數
      char(num)           255
      varchar(num)     65535
      
   浮點型   
      collation 排序方式
      character
      binary(–)
      float
      double
   屬性
      not null
      null
      default
  show character set;  顯示所有字符集
  show collation;       排序方式
    數值
      auto_increment 必須是主鍵或唯一鍵,與not null
      unsigned   無符號類型
      int(num) 定義顯示長度,固定類型長度為4
    佈爾
      0 真
      1 假
    枚舉和集合
      enum   enum('–','–') default '–'
      set
使用insert 插入數據時values 中的值定義
    如果是字符串 必須用‘—’
    如果是int類型  直接寫數字
mysql 模型  定義所接受sql語句格式、數據類型在違反定義的時候能否插入數值
     變量類型
         全局變量 show global variables
             對每一個新建立的會話都生效
         會話變量 show session variables
             隻對當前會話生效
     修改類型
         set sql_mode='—'
         set global sql_mode='—'
     常用模式
        ansi quotes   定義符號
        ignore_space  忽略內建函數
        strict_all_tables 所有非法數據不允許插入
        traditional   傳統模式
       
大小寫
   觸發器區分大小寫
   別名區分大小寫
   binary 類型區分
   數據庫和表的名字的大小寫與操作系統支持的類型有關
數據庫
  
create database if [not] exists databasename character set ‘—’ collate ‘–’; 
show create database basename; 查看創建時的字符集    
alter database basename character set ‘—’
alter database basename clooate ‘—’ 

   key (鍵,constraints )index
      候選鍵
      主鍵  primary key
      唯一鍵 unique key  允許出現空值
      外鍵 foreign key 多個表之間建立關系
          存儲引擎必須支持事務
          show engines;顯示所有存儲引擎 default 默認
          存儲引擎是表級別的 InnoDB
      索引 降低更新
             提高查詢效率
       
作者 “殘雪”

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *