云服务器网:购买云服务器和VPS必上的网站!

ubuntu安装redis(ubuntu安装redisserver)

本文目录:1、Ubuntu安装PHP2、Ubuntu 18.04 安装 pm23、一台windiws可以跑不同版本的redis吗4、redis是一个第三方插件吗5、如何用Launchpad里的PPA源安装新软件6、linux下redis 怎么使用Ubuntu安装PHPapt-get update 更

本文目录:

  • 1、Ubuntu安装PHP
  • 2、Ubuntu 18.04 安装 pm2
  • 3、一台windiws可以跑不同版本的redis吗
  • 4、redis是一个第三方插件吗
  • 5、如何用Launchpad里的PPA源安装新软件
  • 6、linux下redis 怎么使用

Ubuntu安装PHP

apt-get update 更新

apt-get install language-pack-en-base software-properties-common -y 解决语言冲突和中文乱码

locale-gen en_US.UTF-8 语言环境

apt-get install vim -y 安装vim

LC_ALL=en_US.UTF-8 add-apt-repository ppa:ondrej/php 使用ppa安装php

apt-get update 再次更新

apt-get install php7.4 php7.4-fpm php7.4-cli php7.4-dev php7.4-redis php7.4-mysql php7.4-curl php7.4-xml php7.4-json php7.4-gd php7.4-mbstring php7.4-zip php7.4-bcmath -y 安装php和相关组件

php -v 查看php版本

Ubuntu 18.04 安装 pm2

本文首发地址: 开源实践网:ubuntu 18.04 安装 Redis

pm2 是一个 Node.js 应用的进程管理器,它可以让你的应用程序保持运行,还有一个内建的负载均衡器。它非常简单而且强大,你可以零间断重启或重新加载你的 node 应用,它也允许你为你的 node 应用创建集群。

更新apt-get

已经安装过得同学可以跳过这一步

安装 NodeJS:

检测node版本

安装npm

然后我们安装 n 来管理 nodejs 版本:

上面的有点旧,安装最新的稳定版nodejs

使用如下命令安装

查看帮助,看到提示就说明成功了

pm2 常见命令

一台windiws可以跑不同版本的redis吗

一台windiws不可以跑不同版本的redis。

扩展知识;

Redis介绍

Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set –有序集合)和hash(哈希类型)。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。

如何在window上让redis跑起来:

在Windows上,安装Ubuntu上的Bash,这是首选方法。

从开始搜索打开或关闭Windows功能(类型turn)

选择适用于Linux的Windows子系统(测试版)

一旦安装,可以通过从Windows命令提示符键入 bash 在Ubuntu上运行bash 。要安装最新版本的Redis,我们需要使用一个存储库来维护Ubuntu和Debian服务器的最新软件包

启动redis

redis是一个第三方插件吗

对于变化频率非常快的数据来说,如果还选择传统的静态缓存方式(Memocached、FileSystem等)展示数据,可能在缓存的存取上会有很大的开销,并不能很好的满足需要,而Redis这样基于内存的NoSQL数据库,就非常适合担任实时数据的容器。但是往往又有数据可靠性的需求,采用MySQL作为数据存储,不会因为内存问题而引起数据丢失,同时也可以利用关系数据库的特性实现很多功能。所以就会很自然的想到是否可以采用MySQL作为数据存储引擎,Redis则作为Cache。而这种需求目前还没有看到有特别成熟的解决方案或工具,因此采用Gearman+PHP+MySQLUDF的组合异步实现MySQL到Redis的数据复制。MySQL到Redis数据复制方案无论MySQL还是Redis,自身都带有数据同步的机制,比较常用的MySQL的Master/Slave模式,就是由Slave端分析Master的binlog来实现的,这样的数据复制其实还是一个异步过程,只不过当服务器都在同一内网时,异步的延迟几乎可以忽略。那么理论上也可以用同样方式,分析MySQL的binlog文件并将数据插入Redis。但是这需要对binlog文件以及MySQL有非常深入的理解,同时由于binlog存在Statement/Row/Mixedlevel多种形式,分析binlog实现同步的工作量是非常大的。因此这里选择了一种开发成本更加低廉的方式,借用已经比较成熟的MySQLUDF,将MySQL数据首先放入Gearman中,然后通过一个自己编写的PHPGearmanWorker,将数据同步到Redis。比分析binlog的方式增加了不少流程,但是实现成本更低,更容易操作。Gearman的安装与使用Gearman是一个支持分布式的任务分发框架。设计简洁,获得了非常广泛的支持。一个典型的Gearman应用包括以下这些部分:GearmanJobServer:Gearman核心程序,需要编译安装并以守护进程形式运行在后台GearmanClient:可以理解为任务的收件员,比如在后台执行一个发送邮件的任务,可以在程序中调用一个GearmanClient并传入邮件的信息,然后就可以将执行结果立即展示给用户,而任务本身会慢慢在后台运行。GearmanWorker:任务的真正执行者,一般需要自己编写具体逻辑并通过守护进程方式运行,GearmanWorker接收到GearmanClient传递的任务内容后,会按顺序处理。以前曾经介绍过类似的后台任务处理项目Resque。两者的设计其实非常接近,简单可以类比为:GearmanJobServer:对应Resque的Redis部分GearmanClient:对应Resque的Queue操作GearmanWorker:对应Resque的Worker和Job这里之所以选择Gearman而不是Resque是因为Gearman提供了比较好用的MySQLUDF,工作量更小。安装Gearman及PHPGearman扩展以下均以Ubuntu12.04为例。apt-getinstallgearmangearman-serverlibgearman-dev检查Gearman的运行状况:/etc/init.d/gearman-job-serverstatus*gearmandisrunning说明Gearman已经安装成功。PHP的Gearman扩展可以通过pecl直接安装peclinstallgearmanecho”extension=gearman.so”/etc/php5/conf.d/gearman.iniservicephp5-fpmrestart但是实测发现ubuntu默认安装的gearman版本过低,直接运行peclinstallgearman会报错configure:error:libgearmanversion1.1.0orlaterrequired因此Gearman+PHP扩展建议通过编译方式安装,这里为了简单说明,选择安装旧版本扩展:peclinstallgearman-1.0.3Gearman+PHP实例为了更容易理解后文Gearman的运行流程,这里不妨从一个最简单的Gearman实例来说明,比如要进行一个文件处理的操作,首先编写一个GearmanClient并命名为client.php:addServer();$client-doBackground(‘writeLog’,’Logcontent’);echo’文件已经在后台操作’;运行这个文件,相当于模拟用户请求一个Web页面后,将处理结束的信息返回用户:phpclient.php查看一下Gearman的状况:(echostatus;sleep0.1)|netcat127.0.0.14730可以看到输出为writeLog100.说明已经在Gearman中建立了一个名为writeLog的任务,并且有1个任务在队列等待中。而上面的4列分别代表当前的Gearman的运行状态:任务名称在等待队列中的任务正在运行的任务正在运行的Worker进程可以使用watch进行实时监控:watch-n1″(echostatus;sleep0.1)|nc127.0.0.14730″然后我们需要编写一个GearmanWorker命名为worker.php:addServer();$worker-addFunction(‘writeLog’,’writeLog’);while($worker-work());functionwriteLog($job){$log=$job-workload();file_put_contents(__DIR__.’/gearman.log’,$log.”\n”,FILE_APPEND|LOCK_EX);}Worker使用一个while死循环实现守护进程,运行phpworker.php可以看到Gearman状态变为:writeLog001同时查看同目录下gearman.log,内容应为从Client传入的值Logcontent。通过MySQLUDF+Trigger同步数据到GearmanMySQL要实现与外部程序互通的最好方式还是通过MySQLUDF(MySQLuserdefinedfunctions)来实现。为了让MySQL能将数据传入Gearman,这里使用了lib_mysqludf_json和gearman-mysql-udf的组合。安装lib_mysqludf_json使用lib_mysqludf_json的原因是因为Gearman只接受字符串作为入口参数,可以通过lib_mysqludf_json将MySQL中的数据编码为JSON字符串apt-getinstalllibmysqlclient-devwget/mysqludf/lib_mysqludf_json/archive/master.zipunzipmaster.zipcdlib_mysqludf_json-master/rmlib_mysqludf_json.sogcc$(mysql_config–cflags)-shared-fPIC-olib_mysqludf_json.solib_mysqludf_json.c可以看到重新编译生成了lib_mysqludf_json.so文件,此时需要查看MySQL的插件安装路径:mysql-uroot-pPASSWORD–execute=”showvariableslike’%plugin%’;”+—————+————————+|Variable_name|Value|+—————+————————+|plugin_dir|/usr/lib/mysql/plugin/|+—————+————————+然后将lib_mysqludf_json.so文件复制到对应位置:cplib_mysqludf_json.so/usr/lib/mysql/plugin/最后登入MySQL运行语句注册UDF函数:CREATEFUNCTIONjson_objectRETURNSSTRINGSONAME’lib_mysqludf_json.so’;安装gearman-mysql-udf方法几乎一样:apt-getinstalllibgearman-devwgetmakemakeinstall登入MySQL运行语句注册UDF函数:CREATEFUNCTIONgman_do_backgroundRETURNSSTRINGSONAME’libgearman_mysql_udf.so’;CREATEFUNCTIONgman_servers_setRETURNSSTRINGSONAME’libgearman_mysql_udf.so’;最后指定Gearman服务器的信息:SELECTgman_servers_set(‘127.0.0.1:4730’);通过MySQL触发器实现数据同步最终同步哪些数据,同步的条件,还是需要根据实际情况决定,比如将数据表data的数据在每次更新时同步,那么编写Trigger如下:DELIMITER$$CREATETRIGGERdatatoredisAFTERUPDATEONdataFOREACHROWBEGINSET@ret=gman_do_background(‘syncToRedis’,json_object(NEW.idas`id`,NEW.volumeas`volume`));END$$DELIMITER;尝试在数据库中更新一条数据查看Gearman是否生效。GearmanPHPWorker将MySQL数据异步复制到RedisRedis作为时下当热的NoSQL缓存解决方案无需过多介绍,其安装及使用也非常简单:apt-getinstallredis-serverpeclinstallredisecho”extension=redis.so”/etc/php5/conf.d/redis.ini然后编写一个GearmanWorker:redis_worker.php!/usr/bin/envphpaddServer();$worker-addFunction(‘syncToRedis’,’syncToRedis’);$redis=newRedis();$redis-connect(‘127.0.0.1’,6379);while($worker-work());functionsyncToRedis($job){global$redis;$workString=$job-workload();$work=json_decode($workString);if(!isset($work-id)){returnfalse;}$redis-set($work-id,$workString);}最后需要将Worker在后台运行:nohupphpredis_worker.php通过这种方式将MySQL数据复制到Redis,经测试单Worker基本可以瞬时完成。

如何用Launchpad里的PPA源安装新软件

首先需要在 注册用户,这个账号是使用Ubuntu one的账号。当你注册的时候,网页会提醒你在Ubuntu中添加启动器,这时确定就行。然后依据提示注册就行了。注册后打开初始界面如下:

在search文本框中输入你想要的软件,比如我要安装wine,输入并按search。在下面会出现一系列和wine相关的软件。我们选择第一项:wine team ppa:”ubuntu wine team”。根据关键字wine、Ubuntu和ppa就可以确定选择这项了。

在wine的maintained package下根据时间先后列出wine的版本,前面为最新,为wine1.6,同时可以看到该软件的其他相关软件,已经是否有failures,即安装失败的时候,根据这些情况,可以尽可能的选择较新较稳定的版本进行安装。我们选择wine1.6。

.我们尽量寻找这样的add this ppa to you system的标题及ppa:Ubuntu-wine/ppa的内容。即和添加、地址有关的文字,一般添加的ppa源使用这样的格式【ppa:user/ppa-name】,尤其是ppa:非常具有代表性,要找到它就行了。

在上面经过查找后找到了Ubuntu的ppa软件包,那么接下来就是使用命令行进行添加、更新和安装操作了。基本格式是这样的:

sudo add-apt-repository ppa:user/ppa-name

sudo apt-get update

sudo apt-get install ppa-name

linux下redis 怎么使用

1. 安装,软件仓库里有的并且满足需要那就直接从软件仓库里安装

ubuntu: sudo apt-get install redis-server

centOS:  yum install redis

其他的也差不多

另一种编译安装就比较麻烦一点,去官网下载合适的版本的源代码,make …

2. 使用 a)命令行使用 redis-cli

b) shell 调用同a

c) 通过其他语言调用,比如php,则需要安装php-redis扩展,Python则需要安装Python-redis模块,其他语言类似,然后就是在各个语言中根据api调用啦

本文来源:https://www.yuntue.com/post/121144.html | 云服务器网,转载请注明出处!

关于作者: yuntue

云服务器(www.yuntue.com)是一家专门做阿里云服务器代金券、腾讯云服务器优惠券的网站,这里你可以找到阿里云服务器腾讯云服务器等国内主流云服务器优惠价格,以及海外云服务器、vps主机等优惠信息,我们会为你提供性价比最高的云服务器和域名、数据库、CDN、免费邮箱等企业常用互联网资源。

为您推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注