MySQL的FIND_IN_SET函數使用方法分享

很多時候我們在設計資料庫時有這種情況,比如: 有個文章表裡面有個type欄位,他儲存的是文章類型,有 1頭條,2推薦,3熱點,4圖文 .....11,12,13等等 現在有篇文章他既是 頭條,又是熱點,還是圖文, type中以 1,3,4的格式儲存. 那們我們如何用sql尋找所有type中有4圖文標準的文章呢, 這就要我們的find_in_set出馬的時候到了. 先看mysql手冊中find_in_set函數的文法: FIND_IN_SET(str,strlist) 假如字串str 在由N

對於mysql的query_cache認識的誤區

其實,這一種說法是不完全正確的。首先第一點,mysql的query_cache的索引值並不是簡單的query,而是query加databasename加flag。這個從源碼中就可以看出。在這裡不做重點描述,後續可以針對於這一點再具體分析。重要的是第二點,是不是加了空格,mysql就認為是不同的查詢呢?實際上這個是要分情況而言的,要看這個空格加在哪。 如果空格是加在query之前,比如是在query的起始處加了空格,這樣是絲毫不影響query cache的結果的,mysql認為這是一條query,

MySQL InnoDB之事務與鎖詳解

引題:為何引入事務?1>.資料完整性2>.資料安全性3>.充分利用系統資源,提高系統並發處理的能力1. 事務的特徵事務具有四個特性:原子性(Atomiocity)、一致性(Consistency)、隔離性(Isolation)和持久性(Durability),這四個特性簡稱ACID特性。1.1原子性事務是資料庫的邏輯工作單位,事務中包括的所有操作要麼都做,要麼都不做。1.2 一致性事務執行的結果必須是使資料庫從一個一致性的狀態變到另外一個一致性狀態。1.3

利用mysql的inet_aton()和inet_ntoa()函數儲存IP地址的方法分享

mysql> create table jackbillow (ip int unsigned, name char(1)); Query OK, 0 rows affected (0.02 sec) mysql> insert into jackbillow values(inet_aton('192.168.1.200'), 'A'), (inet_aton('200.100.30.241'), 'B'); Query OK, 2 rows affected (0.00 sec)

深入Mysql字元集設定分析

基本概念 • 字元(Character)是指人類語言中最小的表義符號。例如'A'、'B'等; • 給定一系列字元,對每個字元賦予一個數值,用數值來代表對應的字元,這一數值就是字元的編碼(Encoding)。例如,我們給字元'A'賦予數值0,給字元'B'賦予數值1,則0就是字元'A'的編碼; • 給定一系列字元並賦予對應的編碼後,所有這些字元和編碼對組成的集合就是字元集(Character Set)。例如,給定字元列表為{'A','B'}時,{'A'=>0,

mysql服務1067錯誤多種解決方案分享

my.ini在MySQL的目錄,於是在同事機器上拷貝了一個my.ini拿來修改,並單獨放在一個地方作為備份。其內容如下: 複製代碼 代碼如下:#Uncomment or Add only the keys that you know how works. #Read the MySQL Manual for instructions [mysqld] basedir=d:/MySQL5.0/ #bind-address=127.0.0.1 datadir=d:/MySQL5.0/data

Mysql中校對集utf8_unicode_ci與utf8_general_ci的區別說明

下面摘錄一下Mysql 5.1中文手冊中關於utf8_unicode_ci與utf8_general_ci的說明: 當前,utf8_unicode_ci校對規則僅部分支援Unicode校對規則演算法。一些字元還是不能支援。並且,不能完全支援組合的記號。這主要影響越南和俄羅斯的一些少數民族語言,如:Udmurt 、Tatar、Bashkir和Mari。 utf8_unicode_ci的最主要的特色是支援擴充,即當把一個字母看作與其它字母組合相等時。例如,在德語和一些其它語言中‘ß'等於‘ss'。

MySQL無法啟動、無法停止解決方案(安全設定後容易出現)

最近在Windows 2003上的MySQL出現過多次正常運行時無法串連資料庫故障,現象是無法串連資料庫,也無法停止MySQL或重啟MYSQL,重啟機子也沒有效果,由於每次都是草草嘗試各種方法搞定即可,一直沒有深入研究,下次一定把圖和故障現象系統歸納一下。本文先列一下常見的解決方案。 一、確認MYSQL已經配置且正確 重新設定

#實踐筆記#Ubuntu配置Apache+PHP+MySQL

在我早先的一篇文章《#實踐筆記#本地配置PHPnow與WordPress》,已經討論過PHPnow的本地安裝教程。但是PHPnow套件是Windows平台下的軟體,不適用我現在使用的平台。所以筆者此次嘗試了在Ubuntu 11.10平台下的本機伺服器配置(配置Apache+PHP+MySQL)。  廢話少說,步入整體。  流程筆記:  1.開啟終端,輸入“sudo apt-get install apache2”,斷行符號;(安裝apache2.0)  2.如有密碼請再輸入管理員密碼,斷行符號3

MySQL主從同步、讀寫分離配置步驟

現在使用的兩台伺服器已經安裝了MySQL,全是rpm封裝的,能正常使用。 為了避免不必要的麻煩,主從伺服器MySQL版本盡量保持一致; 環境:192.168.0.1 (Master) 192.168.0.2 (Slave) MySQL Version:Ver 14.14 Distrib 5.1.48, for pc-linux-gnu (i686) using readline 5.1 1、登入Master伺服器,修改my.cnf,添加如下內容; server-id = 1 //資料庫ID號,

利用MySQL加密函數保護Web網站敏感性資料的方法分享

如果您正在運行使用MySQL的Web應用程式,那麼它把密碼或者其他敏感資訊儲存在應用程式裡的機會就很大。保護這些資料免受駭客或者窺探者的擷取是一個令人關注的重要問題,因為您既不能讓未經授權的人員使用或者破壞應用程式,同時還要保證您的競爭優勢。幸運的是,MySQL帶有很多設計用來提供這種型別安全的加密函數。本文概述了其中的一些函數,並說明了如何使用它們,以及它們能夠提供的不同層級的安全。   雙向加密

MySQLDatabase Backup和還原的常用命令小結

備份MySQL資料庫的命令mysqldump -hhostname -uusername -ppassword databasename > backupfile.sql備份MySQL資料庫為帶刪除表的格式備份MySQL資料庫為帶刪除表的格式,能夠讓該備份覆蓋已有資料庫而不需要手動刪除原有資料庫。mysqldump ---add-drop-table -uusername -ppassword databasename >

MySQL時間欄位究竟使用INT還是DateTime的說明

今天解析DEDECMS時發現deder的MYSQL時間欄位,都是用`senddata` int(10) unsigned NOT NULL DEFAULT '0';隨後又在網上找到這篇文章,看來如果時間欄位有參與運算,用int更好,一來檢索時不用在欄位上轉換運算,直接用於時間比較!二來如下所述效率也更高。歸根結底:用int來代替data類型,更高效。環境:Windows XP PHP Version 5.2.9 MySQL Server 5.1

MYSQL效能最佳化分享(分庫分表)

1、分庫分表 很明顯,一個主表(也就是很重要的表,例如使用者表)無限制的增長勢必嚴重影響效能,分庫與分表是一個很不錯的解決途徑,也就是效能最佳化途徑,現在的案例是我們有一個1000多萬條記錄的使用者表members,查詢起來非常之慢,同事的做法是將其散列到100個表中,分別從members0到members99,然後根據mid分發記錄到這些表中,牛逼的代碼大概是這樣子: 複製代碼 代碼如下:<?php for($i=0;$i< 100; $i++ ){ //echo "CREATE

mysql字元集和資料庫引擎修改方法分享

MySQL字元集:cp1252 West European (latin1) ,解決亂碼問題 使用虛擬機器主機空間上的phpmyadmin操作資料庫的時候,如果看到phpmyadmin首頁上顯示的MySQL 字元集為cp1252 West European (latin1),當我們匯入資料時就會出現亂碼,解決的方法是: 在phpmyadmin首頁的右邊有個Language選項,把預設的中文 - Chinese simplified-gb2312改成 中文 - Chinese

Ubuntu+Nginx+Mysql+Php+Zend+eaccelerator安裝配置文字版

把我架設lnmp網站的過程寫出來,希望對想架設網站的朋友有所協助,如有更好的辦法請提出來。 之所以用nginx沒用apache,是因為nginx的效率更高一些,尤其是對一些低配置的伺服器,比如我在單位256M記憶體的舊機器上架設的伺服器。 1、安裝ubuntu server 10.04或10.10,其中安裝語言選的en,時區shanghai,服務只安裝ssh,其他全部用預設就行。

什麼是blob,mysql blob大小配置介紹

BLOB是一個大檔案,典型的BLOB是一張圖片或一個音效檔,由於它們的尺寸,必須使用特殊的方式來處理(例如:上傳、下載或者存放到一個資料庫)。根據Eric Raymond的說法,處理BLOB的主要思想就是讓檔案處理器(如資料庫管理員)不去理會檔案是什麼,而是關心如何去處理它。但也有專家強調,這種處理大資料對象的方法是把雙刃劍,它有可能引發一些問題,如儲存的二進位檔案過大,會使資料庫的效能下降。在資料庫中存放體積較大的多媒體對象就是應用程式處理BLOB的典型例子。 mysql BLOB類型

利用MySQL函數實現判斷視頻副檔名的代碼

複製代碼 代碼如下:delimiter || DROP FUNCTION IF EXISTS IS_MOBILE|| CREATE FUNCTION IS_MOBILE( x VARCHAR(255)) RETURNS TINYINT(1) BEGIN DECLARE result TINYINT(1) DEFAULT 0; SET x = LCASE(x); IF RIGHT(x,4) = '.mp4' THEN SET result = 1; ELSEIF LEFT(x,9) =

mysql資料庫差異比較的PHP代碼

當然可以去PHPMYADMIN裡瀏覽一下。但是終究有遺漏吧。所以自己寫了個,比較資料庫差異的指令碼(PHP的),方便一下自己。當然代碼很簡單,就不講解了,貼代碼: 複製代碼 代碼如下:<? mysql_connect('localhost','root','root'); mysql_select_db('tablea'); //標準的資料庫 $q = mysql_query("show tables"); while($s = mysql_fetch_array($q)){ $name

深入理解mysql SET NAMES和mysql(i)_set_charset的區別

說到, 盡量使用mysqli_set_charset(mysqli:set_charset)而不是”SET NAMES”, 當然, 這個內容在PHP手冊中也有敘及, 但是卻沒有解釋為什麼.   最近有好幾個朋友問我這個問題, 到底為什麼?   問的人多了, 我也就覺得可以寫篇blog, 專門介紹下這部分的內容了.   首先, 很多人都不知道”SET NAMES”到底是做了什麼,   我之前的文章深入MySQL字元集設定中, 曾經介紹過character_set_client/character_

總頁數: 2483 1 .... 189 190 191 192 193 .... 2483 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.