我试着开始在我的服务器上思考sphinx,但它不想工作.
我做:
$rake thinking_sphinx:index && rake thinking_sphinx:start
我得到:
Generating Configuration to /vol/www/apps/ror_tutorial/releases/20120202111730/config/development.sphinx.conf Sphinx 2.0.3-release (r3043) Copyright (c) 2001-2011,Andrew Aksyonoff Copyright (c) 2008-2011,Sphinx Technologies Inc (http://sphinxsearch.com) using config file '/vol/www/apps/ror_tutorial/releases/20120202111730/config/development.sphinx.conf'... indexing index 'micropost_core'... WARNING: collect_hits: mem_limit=0 kb too low,increasing to 13568 kb collected 0 docs,0.0 MB total 0 docs,0 bytes total 0.008 sec,0 bytes/sec,0.00 docs/sec skipping non-plain index 'micropost'... indexing index 'user_core'... WARNING: collect_hits: mem_limit=0 kb too low,0 bytes total 0.012 sec,0.00 docs/sec skipping non-plain index 'user'... total 2 reads,0.000 sec,0.0 kb/call avg,0.0 msec/call avg total 10 writes,0.0 msec/call avg Failed to start searchd daemon. Check /vol/www/apps/ror_tutorial/releases/20120202111730/log/searchd.log. Failed to start searchd daemon. Check /vol/www/apps/ror_tutorial/releases/20120202111730/log/searchd.log Be sure to run thinking_sphinx:index before thinking_sphinx:start
我的服务器系统是Ubuntu 10.04.此外,在我的本地机器(Mac OS X)上,它完美无缺.
我的sphinx.yml:
development: bin_path: "/usr/local/bin" searchd_binary_name: searchd indexer_binary_name: indexer test: bin_path: "/usr/local/bin" searchd_binary_name: searchd indexer_binary_name: indexer
配置/ deploy.rb
#Add RVM's lib directory to the load path. $:.unshift(File.expand_path('./lib',ENV['rvm_path'])) #Load RVM's capistrano plugin. require "rvm/capistrano" require 'bundler/capistrano' #require 'thinking_sphinx/deploy/capistrano' set :rvm_ruby_string,'1.9.3-head' #This is current version of ruby which is uses by RVM. To get version print: $rvm list set :rvm_type,:root #Don't use system-wide RVM,use my user,which name is root. set :user,"root" #If you log into your server with a different user name than you are logged into your local machine with,you’ll need to tell Capistrano about that user name. set :rails_env,"production" set :application,"ror_tutorial" set :deploy_to,"/vol/www/apps/#{application}" set :scm,:git set :repository,"git://github.com/Loremaster/sample_app.git" set :branch,"master" set :deploy_via,:remote_cache default_run_options[:pty] = true #Must be set for the password prompt from git to work#Keep cash of repository locally and with ney deploy get only changes. server "188.127.224.136",:app,# This may be the same as your `Web` server :web,:db,:primary => true # This is where Rails migrations will run # If you are using Passenger mod_rails uncomment this: namespace :deploy do task :start do ; end task :stop do ; end task :restart,:roles => :app,:except => { :no_release => true } do run "#{try_sudo} touch #{File.join(current_path,'tmp','restart.txt')}" end end desc "Prepare system" task :prepare_system,:roles => :app do run "cd #{current_path} && bundle install --without development test && bundle install --deployment" end after "deploy:update_code",:prepare_system
解决方法
我解决了我在背景中有狮身人面像的过程,所以我就把它杀死了:
$ps -efa | grep sphinx root 23823 1 0 14:12 ? 00:00:00 searchd --pidfile --config /vol/www/apps/ror_tutorial/releases/20120202111104/config/production.sphinx.conf root 27069 20413 0 14:49 pts/1 00:00:00 grep sphinx $kill 23823
然后我开始狮身人面像:
$rake ts:start RAILS_ENV=production Started successfully (pid 27097).