memcached是一套分佈式的高速緩存系統,運行在內存中。memcached缺少認證以及安全管制,這表明應該將memcached服務器放置在防火牆後。php
名稱 | 角色 | 地址 |
---|---|---|
centos7-1 | 服務端 | 192.168.142.66 |
centos7-2 | 客戶端 | 192.168.142.77 |
安裝環境包java
[root@localhost libevent-2.1.8-stable]# yum install gcc gcc-c++ make -y
安裝Libevent軟件本體mysql
[root@localhost memcached]# tar zxf libevent-2.1.8-stable.tar.gz -C /opt/ [root@localhost memcached]# cd /opt/libevent-2.1.8-stable/ //配置並編譯安裝 [root@localhost libevent-2.1.8-stable]# ./configure \ --prefix=/usr/local/libevent [root@localhost libevent-2.1.8-stable]# make && make install
配置、安裝Memcachedc++
[root@localhost memcached]# tar zxf memcached-1.5.6.tar.gz -C /opt/ [root@localhost memcached]# cd /opt/memcached-1.5.6/ [root@localhost memcached-1.5.6]# ./configure \ --prefix=/usr/local/memached \ --with-libevent=/usr/local/libevent/ [root@localhost memcached-1.5.6]# make && make install //創建軟連接 [root@localhost memcached-1.5.6]# ln -s /usr/local/memached/bin/* /usr/local/bin/
啓動服務sql
[root@localhost memcached-1.5.6]# memcached -d -m 32m -p 11211 -u root //「-d」:以守護進程的方式運行(後臺運行) //「-m」:指定最大使用內存大小 //「-p」:指定端口 //「-u」:指定用戶 [root@localhost memcached-1.5.6]# netstat -atnp | grep 11211 tcp 0 0 0.0.0.0:11211 0.0.0.0:* LISTEN 12591/memcached tcp6 0 0 :::11211 :::* LISTEN 12591/memcached [root@localhost memcached-1.5.6]# systemctl stop firewalld.service [root@localhost memcached-1.5.6]# setenforce 0
安裝Telent用於鏈接Memcached數據庫
[root@localhost memcached-1.5.6]# yum install telnet -y //鏈接memcached [root@localhost memcached-1.5.6]# telnet 192.168.142.66 11211 Trying 192.168.142.66... Connected to 192.168.142.66. Escape character is '^]'.
安裝LAMP架構vim
詳情請見本人以前的博客,裏面有詳細部署過程,這裏就不在贅述了centos
博客地址:緩存
數據庫中進行提權安全
[root@localhost ~]# mysql -uroot -p mysql> create database sky; mysql> grant all on sky.* to 'skyuser'@'%' identified by '123123'; mysql> flush privileges;
測試PHP工具可否鏈接數據庫
```php+HTML
[root@localhost htdocs]# vim /usr/local/httpd/htdocs/index.php
<?php
$link=mysql_connect('192.168.142.132','skyuser','123123');
if($link) echo "<h1>Success!!!</h1>";
else echo "Fail!!";
mysql_close();
?>
**安裝、配置memcache客戶端** ```java [root@localhost memcached]# tar zxf memcache-2.2.7.tgz -C /opt/ [root@localhost memcached]# cd /opt/memcache-2.2.7/ [root@localhost memcache-2.2.7]# /usr/local/php5/bin/phpize //爲memcache生成啓動腳本 [root@localhost memcache-2.2.7]# ./configure \ --enable-memcache \ --with-php-config=/usr/local/php5/bin/php-config //編譯&安裝 [root@localhost memcache-2.2.7]# make && make install
修改PHP的配置文件
[root@localhost memcache-2.2.7]# vim /usr/local/php5/php.ini //736行後添加 extension_dir = "/usr/local/php5/lib/php/extensions/no-debug-zts-20131226/" extension = memcache.so
創建測試頁面
```php+HTML[root@localhost memcache-2.2.7]# vim /usr/local/httpd/htdocs/index.php<?php$memcache = new Memcache();$memcache->connect('192.168.142.136',11211); //memached服務端地址$memcache->set('key',Memcache test Successfull!!!',0,60);$result = $memcache->get('key');unset($memcache);echo $result;?>