MySQL 表数据 内存缓存_高性能内存对象缓存Memcached安装及数据库操作与管理

认识Memcached

Memcached是一套开源的高性能分布式内存对象缓存系统,它将所有的数据都存储在内存中,因为在内存中会统一维护一张巨大的Hash表,所以支持任意存储类型的数据。很多网站通过使用Memcached提高网站的访问速度,尤其是对于大型的需要频繁访问数据的网站。Memcached是典型的C/S架构,因此需要安装Memcached服务端与MemcachedAPI客户端。Memcached服务端是用C语言编写的,而Memcached API客户端可以用任何语言来编写,如PHP、Python、 Perl等,并通过Memcached协议与Memcached服务端进行通信。

当Web客户端发送请求到Web服务器的应用程序时,应用程序会通过调用Memcached API客户端程序库接口去连接Memcached服务器,进而查询数据。如果此时Web客户端所请求的数据已经在Memcached服务端中缓存,则Memcached服务端会将数据返回给Web客户端;如果数据不存在,则会将Web客户端请求发送至MySQL数据库,由数据库将请求的数据返回给Memcached以及Web客户端,与此同时Memcached服务器也会将数据进行保存,以方便用户下次请求使用。

Memcached缓存机制

缓存是常驻在内存的数据,能够快速进行读取。而Memcached就是这样一款非常出色的缓存软件,当程序写入缓存数据请求时,Memcached的API接口将Key输入路由算法模块路由到集群中一台服务器,之后由API接口与服务器进行通信,完成一次分布式缓存写入。

安装Memcached案例

本案例使用两台CentOS 7系统和一台Windows 7完成,两台CentOS 7中一台是Memcached服务端,另一条是基于LAMP架构进行Memcached扩展的Memcached API客户端

Memcached服务器IP: 192.168.10.172

主要软件包:

libevent-2.1.8-stable.tar.gz

memcached-1.5.6.tar.gz

Memcached API客户端IP:192.168.10.154

主要软件包:

httpd-2.4.29.tar.gz

mysql-5.6.26.tar.gz

php-5.6.11.tar.bz2

libevent-2.1.8-stable.tar.gz

memcached-1.5.6.tar.gz

测试主机IP:192.168.10.145

安装Memcached服务器

1、解压相关软件包

tar xzvf memcached-1.5.6.tar.gz -C /opt/

tar xzvf libevent-2.1.8-stable.tar.gz -C /opt/

2、Memcached服务器端操作

cd /opt/libevent-2.1.8-stable

./configure –prefix=/usr/local/libevent //指明安装路径

make && make install

cd /opt/memcached-1.5.6

./configure

–prefix=/usr/local/memcached //指明安装路径

–with-libevent=/usr/local/libevent/ //指明libevent安装路径

make && make install

ln -s /usr/local/memcached/bin/* /usr/local/bin/

memcached -d -m 32m -p 11211 -u root //开启服务,-d守护进程 -m缓存大小32M -p端口11211

netstat -anpt | grep memc //查看端口,确认开启

systemctl stop firewalld.service

setenforce 0 //关闭防火墙和安全功能

0c2cf82a16c9ce3aa2db3c7e7eae6417.png

2、安装MYSQL

安装相关环境包

yum install -y ncurses-devel autoconf cmake

解压软件包,配置,编译安装

tar xzvf mysql-5.6.26.tar.gz -C /opt

cd /opt/mysql-5.6.26

cmake

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql

-DDEFAULT_CHARSET=utf8

-DDEFAULT_COLLATION=utf8_general_ci

-DEXTRA_CHARSETS=all

-DSYSCONFIDIR=/etc

-DMYSQL_DATADIR=/home/mysql/

-DMYSQL_UNIX_ADDR=/home/mysql/mysql.sock

make && make install

将启动脚本复制到/etc/init.d/目录下方便service管理

cp support-files/my-default.cnf /etc/my.cnf

cp support-files/mysql.server /etc/init.d/mysqld

chmod 755 /etc/init.d/mysqld //给启动脚本加权限

chkconfig –add /etc/init.d/mysqld //添加到service管理器中

chkconfig mysqld –level 35 on //35级别开机自启动

设置环境变量

echo “PATH=$PATH:/usr/local/mysql/bin” >> /etc/profile //环境变量

source /etc/profile //刷新环境变量

echo $PATH //查看

创建数据库管理用户,初始化数据库

useradd -s /sbin/nologin mysql

chown -R mysql:mysql /usr/local/mysql/

cd /opt/mysql-5.6.26

/usr/local/mysql/scripts/mysql_install_db

–user=mysql

–ldata=/var/lib/mysql

–basedir=/usr/local/mysql

–datadir=/home/mysql //初始化数据库

ln -s /var/lib/mysql/mysql.sock /home/mysql/mysql.sock //方便管理创建软链接

修改主配置文件,并开启服务

vi /etc/init.d/mysqld

basedir=/usr/local/mysql //指明安装目录

datadir=/home/mysql //指明数据存放目录

21c3526126fe27add3fe08625090a30b.png

3、安装PHP

安装GD库及相关环境包

yum -y install

gd

libpng

libpng-devel

pcre

pcre-devel

libxml2-devel

libjpeg-devel

解压软件包,配置,并编译安装

tar xjvf php-5.6.11.tar.bz2 -C /opt

cd /opt/php-5.6.11

./configure

–prefix=/usr/local/php5

–with-gd

–with-zlib

–with-apxs2=/usr/local/httpd/bin/apxs

–with-mysql=/usr/local/mysql

–with-config-file-path=/usr/local/php5

–enable-mbstring

make && make install

方便管理创建软链接

cp php.ini-development /usr/local/php5/php.ini

ln -s /usr/local/php5/bin/* /usr/local/bin/

ln -s /usr/local/php5/sbin/* /usr/local/sbin/

编辑Apache主配置文件,使其支持PHP

vim /etc/httpd.conf

#插入下两行内容

AddType application/x-httpd-php .php

AddType application/x-httpd-php-source .phps

#添加PHP类型的首页

DirectoryIndex index.php index.html

8100a104416e5f6b1232d3b94560749c.png

首页目录下添加PHP类型的首页,可使用浏览器测试

vi /usr/local/httpd/htdocs/index.php

phpinfo();

浏览器测试“http://192.168.10.154/index.php”

81f09b37874fe7e7d75313d16100e616.png

ba05405fa5021c7a5f937ca17ee3da2b.png

以下是在客户端去检测服务端是否可以连接

vim /usr/local/httpd/htdocs/index.php //编写测试页面,测试memcached工作是否正常

#重新插入如下内容

$memcache = new Memcache();

$memcache->connect(‘192.168.175.128’,11211);

$memcache->set(‘key’,’Memcache test Successfull!’,0,60);

$result = $memcache->get(‘key’);

unset($memcache);

echo $result;

systemctl restart httpd.service //重启Apache

http://192.168.10.154/index.php //输入客户端地址测试是否成功

42e16e68a8f75c81f2d50b6c17f48319.png

文章知识点与官方知识档案匹配,可进一步学习相关知识MySQL入门技能树首页概览31954 人正在系统学习中 相关资源:管道壁厚计算软件_管道壁厚计算软件-制造工具类资源-CSDN文库

来源:厚泉

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年1月16日
下一篇 2021年1月16日

相关推荐