yum install -y gcc gcc-c++ makezlib zlib-devel pcre* libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers1、安装tar zxf nginx-1.2.1.tar.gz
./configure --prefix=/usr/local/webserver/nginx/
make && make install#/usr/local/webserver/nginx/sbin/nginx安装Mysql-5.51、准备groupadd mysql
useradd -r -g mysql mysql
mkdir /usr/local/webserver/mysql
mkdir -pv /usr/local/webserver/mysql/data
chown mysql.mysql /usr/local/webserver/mysql/ -R
yum -y install gcc gcc-c++ ncurses-devel libtool openssl-devel bison-devel ncurses-devel libaio-devel
tar zxf mysql-5.5.29.tar.gz
cd mysql-5.5.29tar zxf cmake-2.8.7.tar.gz
cd cmake-2.8.7
./configure
make && make installcmake . -DCMAKE_INSTALL_PREFIX=/usr/local/webserver/mysql -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DENABLED_PROFILING=1 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci
make
make install注:编译的时候如果没有utf8_general_ci,会出现COLLATION'latin1_swedish_ci' is not valid for CHARACTER SET 'utf8'#拷贝主配置文件
cp /root/mysql-5.5.29/support-files/my-innodb-heavy-4G.cnf /etc/my.cnf
#创建启动脚本,cp后可以使用/etc/init.d/mysqld start启动
cp /root/mysql-5.5.29/support-files/mysql.server /etc/init.d/mysqld
#修改权限
chmod 755 /etc/init.d/mysqld
#初始化mysql
sh scripts/mysql_install_db --user=mysql --basedir=/usr/local/webserver/mysql/ --datadir=/usr/local/webserver/mysql/data/
#创建链接到标准路径下(修改环境变量指定,效果一样)
ln -s /usr/local/webserver/mysql/bin/* /usr/bin/
ln -s /usr/local/webserver/mysql/lib/* /usr/lib/
ln -s /usr/local/webserver/mysql/libexec/* /usr/local/libexec
ln -s /usr/local/webserver/mysql/share/man/man1/* /usr/share/man/man1
ln -s /usr/local/webserver/mysql/share/man/man8/* /usr/share/man/man8注:vim /etc/my.cnf (在[mysqld]里添加一行skip-name-resolve = 1跳过域名解析,加快启动速度)/etc/init.d/mysqld start/usr/local/mysql/bin/mysqladmin -u root password $mysqlrootpwd
use mysql;
update user set password=password('newpassword') where user='root';
delete from user where not (user='root') ;
delete from user where user='root' and password='';
drop database test;
DROP USER ''@'%';
flush privileges;#mysql的一些安全设置mysql_secure_installationgroupadd www
useradd -r -g www www
yum install bzip2-devel net-snmp-devel
#wget http://www.ijg.org/files/jpegsrc.v8d.tar.gz
# tar zxvf jpegsrc.v8d.tar.gz
# cd jpeg-8d
# ./configure -enable-shared -enable-static
# make && make install clean2、安装libmcrypt库wget http://lcmp.googlecode.com/files/libmcrypt-2.5.8.tar.gz
tar fvxz libmcrypt-2.5.8.tar.gz
./configure && make && make install说明:libmcrypt默认安装在/usr/localtar-zxvf mhash-0.9.9.9.tar.gz
cd mhash-0.9.9.9
./configure
make && makeinstall4、安装mcrypttar zxvf mcrypt-2.6.8.tar.gz
cd mcrypt-2.6.8
export LD_LIBRARY_PATH=/usr/local/lib
./configure
make && make install说明:由于在配置Mcrypt时,会找不到libmcrypt的链接库,导致无法编译,因为Libmcrypt的链接库默认在/usr/local/lib文件夹下。因些在配置mcrypt时要加入LD_LIBRARY_PATH=/usr/local/lib 导入键接库tar zxf php-5.4.14.tar.gz
./configure --prefix=/usr/local/webserver/php \
--with-libxml-dir=/usr/include/libxml2 \
--with-config-file-path=/usr/local/webserver/php/etc/ \
--with-mysql=/usr/local/webserver/mysql \
--with-mysqli=/usr/local/webserver/mysql/bin/mysql_config \
--with-gd \
--enable-gd-native-ttf \
--with-zlib \
--with-mcrypt \
--with-pdo-mysql=/usr/local/webserver/mysql \
--enable-shmop \
--enable-soap \
--enable-sockets \
--enable-wddx \
--enable-zip \
--with-xmlrpc \
--enable-fpm \
--enable-mbstring \
--with-zlib-dir \
--with-bz2 \
--with-curl \
--enable-exif \
--enable-ftp \
--with-jpeg-dir=/usr/lib64 \
--with-png-dir=/usr/lib64 \
--with-freetype-dir=/usr/lib64 \
--with-iconv \
--enable-xml \
--enable-bcmath \
--enable-sysvsem \
--enable-inline-optimization \
--with-curlwrappers \
--enable-mbregex \
--with-openssl \
--enable-pcntl \
--with-gettext \
--enable-session
make
make installNginx+PHP整合,在安装时必须启用--enable-fpmcp php.ini-production /usr/local/webserver/php/etc/php.ini
rm -rf /etc/php.ini
ln -s /usr/local/webserver/php/etc/php.ini /etc/php.ini
cp /usr/local/webserver/php/etc/php-fpm.conf.default /usr/local/webserver/php/etc/php-fpm.conflocation ~ .*\.(php|php5)?$
{
#fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fcgi.conf;
}在/usr/local/webserver/nginx/conf/目录中创建fcgi.conf文件,输入以下内容:fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param SERVER_SOFTWARE nginx;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;
# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param REDIRECT_STATUS 200;#wget http://download.redis.io/redis-stable.tar.gztar xzvf redis-stable.tar.gz
cd redis-stable
make
make installmkdir -p /etc/redis
cp redis.conf /etc/redis修改配置文件#vi /etc/redis/redis.conf/usr/local/bin/redis-server /etc/redis/redis.conf查看启动ps -ef | grep redis安Redis的PHP扩展1、获取tar zxf owlient-phpredis-2.1.1-1-g90ecd17.tar && cd owlient-phpredis-90ecd17/
/usr/local/webserver/php/bin/phpize
./configure --with-php-config=/usr/local/webserver/php/bin/php-config
make && make install3、配置./configure -prefix=/usr/local/libevent
make && make install3、安装memcached./configure -prefix=/usr/local/memcached --with-libevent=/usr/local/libevent
make && make install
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/libevent/lib注:安装memcached时需要指定libevent的安装位置,最后一条命令是将libevent的lib目录加入LD_LIBRARY_PATH里检查,/usr/local/memcached,有2个目录,安装成功!4、memcached运行参数/usr/local/memcached/bin/memcached -d -m 128 -u root -l 192.168.0.97 -c 256 -P /tmp/memcached.pid5、运行一下报错原因及处理方法:ln -s /usr/local/lib/libevent-1.4.so.2 /usr/lib/libevent-1.4.so.2cd memcache-2.2.5
/usr/local/webserver/php/bin/phpize
#安装PHP扩展都需要执行此脚本
./configure -enable-memcache -with-php-config=/usr/local/webserver/php/bin/php-config -with-zlib-dir
make && make install安装完成会有类似下面的提示:Installing shared extensions:/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20100525/extension_dir = “/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20100525/“
extension = "memcache.so"
#(如果有分号,把分号去掉!)
需要记住生成的提示信息,要与php配置文件php.ini的extension_dir处填写的一致我的瘦服务器配置了nginx,我的ROR应用程序正在它们上运行。在我发布代码更新时运行thinrestart会给我的应用程序带来一些停机时间。我试图弄清楚如何优雅地重启正在运行的Thin实例,但找不到好的解决方案。有没有人能做到这一点? 最佳答案 #Restartjustthethinserverdescribedbythatconfigsudothin-C/etc/thin/mysite.ymlrestartNginx将继续运行并代理请求。如果您将Nginx设置为使用多个上游服务器,例如server{listen80;server
文章目录一、概述简介原理模块二、配置Mysql使用版本环境要求1.操作系统2.mysql要求三、配置canal-server离线下载在线下载上传解压修改配置单机配置集群配置分库分表配置1.修改全局配置2.实例配置垂直分库水平分库3.修改group-instance.xml4.启动监听四、配置canal-adapter1修改启动配置2配置映射文件3启动ES数据同步查询所有订阅同步数据同步开关启动4.验证五、配置canal-admin一、概述简介canal是Alibaba旗下的一款开源项目,Java开发。基于数据库增量日志解析,提供增量数据订阅&消费。Git地址:https://github.co
A/ctohttp://wiki.nginx.org/CoreModule#usermaster进程曾经以root用户运行,是否可以以不同的用户运行nginxmaster进程? 最佳答案 只需以非root身份运行init脚本(即/etc/init.d/nginxstart),就可以用不同的用户运行nginxmaster进程。如果这真的是你想要做的,你将需要确保日志和pid目录(通常是/var/log/nginx&/var/run/nginx.pid)对该用户是可写的,并且您所有的listen调用都是针对大于1024的端口(因为绑定(
我看到其他人也遇到过类似的问题,但没有一个解决方案对我有用。0.3.14gem与其他gem文件一起存在。我已经完全按照此处指示完成了所有操作:https://github.com/brianmario/mysql2.我仍然得到以下信息。我不知道为什么安装程序指示它找不到include目录,因为我已经检查过它存在。thread.h文件存在,但不在ruby目录中。相反,它在这里:C:\RailsInstaller\DevKit\lib\perl5\5.8\msys\CORE\我正在运行Windows7并尝试在Aptana3中构建我的Rails项目。我的Ruby是1.9.3。$gemin
我已经开始使用mysql2gem。我试图弄清楚一些基本的事情——其中之一是如何明确地执行事务(对于批处理操作,比如多个INSERT/UPDATE查询)。在旧的ruby-mysql中,这是我的方法:client=Mysql.real_connect(...)inserts=["INSERTINTO...","UPDATE..WHEREid=..",#etc]client.autocommit(false)inserts.eachdo|ins|beginclient.query(ins)rescue#handleerrorsorabortentirelyendendclient.commi
一、什么是MQTT协议MessageQueuingTelemetryTransport:消息队列遥测传输协议。是一种基于客户端-服务端的发布/订阅模式。与HTTP一样,基于TCP/IP协议之上的通讯协议,提供有序、无损、双向连接,由IBM(蓝色巨人)发布。原理:(1)MQTT协议身份和消息格式有三种身份:发布者(Publish)、代理(Broker)(服务器)、订阅者(Subscribe)。其中,消息的发布者和订阅者都是客户端,消息代理是服务器,消息发布者可以同时是订阅者。MQTT传输的消息分为:主题(Topic)和负载(payload)两部分Topic,可以理解为消息的类型,订阅者订阅(Su
TCL脚本语言简介•TCL(ToolCommandLanguage)是一种解释执行的脚本语言(ScriptingLanguage),它提供了通用的编程能力:支持变量、过程和控制结构;同时TCL还拥有一个功能强大的固有的核心命令集。TCL经常被用于快速原型开发,脚本编程,GUI和测试等方面。•实际上包含了两个部分:一个语言和一个库。首先,Tcl是一种简单的脚本语言,主要使用于发布命令给一些互交程序如文本编辑器、调试器和shell。由于TCL的解释器是用C\C++语言的过程库实现的,因此在某种意义上我们又可以把TCL看作C库,这个库中有丰富的用于扩展TCL命令的C\C++过程和函数,所以,Tcl是
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我来自C、php和bash背景,很容易学习,因为它们都有相同的C结构,我可以将其与我已经知道的联系起来。然后2年前我学了Python并且学得很好,Python对我来说比Ruby更容易学。然后从去年开始,我一直在尝试学习Ruby,然后是Rails,我承认,直到现在我还是学不会,讽刺的是那些打着简单易学的烙印,但是对于我这样一个老练的程序员来说,我只是无法将它
我正在尝试绕过rails配置这个极其复杂的迷宫。到目前为止,我设法在ubuntu上设置了rvm(出于某种原因,ruby在ubuntu存储库中已经过时了)。我设法建立了一个Rails项目。我希望我的测试项目使用mysql而不是mysqlite。当我尝试“rakedb:migrate”时,出现错误:“!!!缺少mysql2gem。将其添加到您的Gemfile:gem'mysql2'”当我尝试“geminstallmysql”时,出现错误,告诉我需要为安装命令提供参数。但是,参数列表很大,我不知道该选择哪些。如何通过在ubuntu上运行的rvm和mysql获取rails3?谢谢。
我有带有gemwebsocket-rails0.7的Rails3.2应用程序。在开发机上,一切正常在生产环境中,我使用Nginx/1.6作为代理服务器,Unicorn作为http服务器。Thin用于独立模式(在https://github.com/websocket-rails/websocket-rails/wiki/Standalone-Server-Mode之后)。nginx配置:location/websocket{proxy_passhttp://localhost:3001/websocket;proxy_http_version1.1;proxy_set_headerUp