国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > MySQL > 正文

MySQL的源碼安裝及使用UDFs進行數(shù)據(jù)自動更新的教程

2024-07-24 13:10:00
字體:
來源:轉載
供稿:網(wǎng)友

MySQL的源碼安裝
1. 安裝依賴組件

# yum install gcc gcc-c++ ncurses-devel perl -y

2. 安裝cmake

# wget http://www.cmake.org/files/v2.8/cmake-2.8.12.tar.gz# tar zxvf cmake-2.8.12.tar.gz# cd cmake-2.8.12# ./bootstrap # make && make install

3. 安裝bison

# wget http://ftp.gnu.org/gnu/bison/bison-3.0.2.tar.gz# tar zxvf bison-3.0.2.tar.gz# cd bison-3.0.2# ./configure# make && make install

4. 創(chuàng)建用戶的相應目錄

# groupadd mysql# useradd -g mysql mysql# mkdir -p /data/mysql/# mkdir -p /data/mysql/data/# mkdir -p /data/mysql/log/

5. 獲取mysql安裝包并安裝

# wget http://downloads.mysql.com/archives/mysql-5.5/mysql-5.5.24.tar.gz# tar zxvf mysql-5.5.24.tar.gz# cd mysql-5.5.24# cmake /-DCMAKE_INSTALL_PREFIX=/data/mysql /-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock /-DDEFAULT_CHARSET=utf8 /-DDEFAULT_COLLATION=utf8_general_ci /-DWITH_INNOBASE_STORAGE_ENGINE=1 /-DWITH_ARCHIVE_STORAGE_ENGINE=1 /-DWITH_BLACKHOLE_STORAGE_ENGINE=1 /-DMYSQL_DATADIR=/data/mysql/data /-DMYSQL_TCP_PORT=3306 /-DENABLE_DOWNLOADS=1# make && make install

6. 修改目錄權限

# chmod +w /data/mysql/# chown -R mysql:mysql /data/mysql/# ln -s /data/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18# ln -s /data/mysql/mysql.sock /tmp/mysql.sock

7. 初始化數(shù)據(jù)庫

# cp -rp /data/mysql/support-files/my-medium.cnf /etc/my.cnf# cp -rp /data/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld# /data/mysql/scripts/mysql_install_db --user=mysql --defaults-file=/etc/my.cnf --basedir=/data/mysql --datadir=/data/mysql/data

8. 啟動mysql服務

# chmod +x /etc/init.d/mysqld# vi /etc/init.d/mysqld -->basedir=/data/mysqldatadir=/data/mysql/data# chkconfig --add mysqld# service mysqld start

9. 完成配置

# /data/mysql/bin/mysqladmin -uroot -p password 'PASSWD'# echo "export PATH=/data/mysql/bin:$PATH" >> ~/.bash_profile # source ~/.bash_profile

UDFs實現(xiàn)Memcached與Mysql的自動更新

UDFs是User Defined Functions的縮寫,表示MYSQL的用戶定義函數(shù),應用程序可以利用這些函數(shù)從MYSQL5.0以上版本的數(shù)據(jù)庫中訪問Memcached寫入或者獲取的數(shù)據(jù)。此外,MYSQL從5.1版本開始支持觸發(fā)器,從而可以在觸發(fā)器中使用UDFs直接更新Memcached的內容,這種方式降低了應用程序設計和編寫的復雜性。
1.安裝

wget https://launchpad.net/libmemcached/1.0/0.34/+download/libmemcached-0.34.tar.gzyum install gcc44 gcc44-c++ libstdc++44-develexport CC=/usr/bin/gcc44export CXX=/usr/bin/g++44./configure --prefix=/soft/libmemcached -disable-64bit CFLAGS="-O3 -march=i686" /--with-memcached=/root/libmemcached-1.0.7/memcachedmake && make install
wget https://launchpad.net/memcached-udfs/trunk/1.1/+download/memcached_functions_mysql-1.1.tar.gz./configure --prefix=/soft/UDFS/memcache_mysql /--with-mysql=/soft/mysql/bin/mysql_config /--libdir=/soft/mysql/lib/plugin /--with-libmemcached=/soft/UDFS/libmemcached
make && make installmysql -uroot -pmysql < /sql/install_functions.sqlmysql -uroot -pmysql -se "select name,dl from mysql.func"
select memc_servers_set('127.0.0.1:11211');//如果mysql restart,需要重新運行這句以建立與memcached之間的關系select memc_server_count();select memc_set('urls:sequence', 0);select memc_list_behaviors()/G//修改memcached參數(shù)的行為select memc_servers_behavior_set('MEMCACHED_BEHAVIOR_NO_BLOCK','1');selectmemc_servers_behavior_set('MEMCACHED_BEHAVIOR_TCP_NODELAY','1'); 

設置MEMCACHED_BEHAVIOR_NO_BLOCK為打開狀態(tài),這樣在memcached出現(xiàn)問題時(不能連接時)數(shù)據(jù)繼續(xù)插入到
mysql中,報錯提示,如果不設置此值,如果memcached失敗,mysql需要等到timeout才可以插入到表中。

2.測試:

drop table if exists urls;create table urls ( id int(3) not null auto_increment, url varchar(64) not null default '', primary key (id) );select memc_servers_set('localhost:11211');select memc_set('urls:sequence', 0);DELIMITER |DROP TRIGGER IF EXISTS url_mem_insert |CREATE TRIGGER url_mem_insertBEFORE INSERT ON urlsFOR EACH ROW BEGIN  SET NEW.id= memc_increment('urls:sequence');   SET @mm= memc_set(NEW.id, NEW.url);END |DROP TRIGGER IF EXISTS url_mem_update |CREATE TRIGGER url_mem_updateBEFORE UPDATE ON urlsFOR EACH ROW BEGIN  SET @mm= memc_replace(OLD.id, NEW.url);END |DROP TRIGGER IF EXISTS url_mem_delete |CREATE TRIGGER url_mem_deleteBEFORE DELETE ON urlsFOR EACH ROW BEGIN  SET @mm= memc_delete(OLD.id);END |DELIMITER ;insert into urls (url) value ('http://google.com');insert into urls (url) value ('http://lycos.com/');insert into urls (url) value ('http://tripod.com/');insert into urls (url) value ('http://microsoft.com/');insert into urls (url) value('http://slashdot.org');insert into urls (url) value ('http://mysql.com');select * from urls;select memc_get('urls:1');select memc_get('urls:2');select memc_get('urls:3');select memc_get('urls:4');select memc_get('urls:5');select memc_get('urls:6');update urls set url= 'http://mysql.com/sun' where url = 'http://mysql.com';select url from urls where url = 'http://mysql.com/sun';select memc_get('urls:6');delete from urls where url = 'http://microsoft.com/';select * from urls where url='http://microsoft.com/';select memc_get('urls:4');

 


注:相關教程知識閱讀請移步到MYSQL教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 察雅县| 昆山市| 黔南| 正宁县| 杭锦旗| 松原市| 沽源县| 合山市| 台北县| 林周县| 乌审旗| 新余市| 漯河市| 仁怀市| 岑巩县| 吉首市| 滨海县| 巴林左旗| 灵丘县| 东乡| 沐川县| 靖江市| 理塘县| 乌拉特后旗| 彩票| 通城县| 准格尔旗| 扶沟县| 威信县| 阿城市| 郴州市| 潮安县| 石景山区| 鄄城县| 东安县| 上饶县| 东海县| 徐水县| 白银市| 吴忠市| 潼关县|