系统:centos 7 64位

一.获取ssbc源代码

1.环境检测(Ssbc当前版本是基于django1.8.1开发,所需python环境为python2.7.5以上。)

[root@localhost ~]# python -V

Python 2.7.5

执行python -V即可获取当前版本。

2.获取ssbc安装包

[root@localhost ~]# wget https://github.com/78/ssbc/archive/master.zip

[root@localhost~]# unzip master.zip

解压后你会发现在root根目录先有个文件夹ssbc-master.

二.安装MariaDB

1.安装数据库及所需环境

yum install gcc gcc-c++ python-devel mariadb mariadb-devel mariadb-server

[root@localhost ~]# yum install gcc

[root@localhost ~]# yum install gcc-c++

[root@localhost ~]# yum install python-devel

[root@localhost ~]# yum install mariadb

[root@localhost ~]# yum install mariadb-devel

[root@localhost ~]# yum install mariadb-server

[root@localhost]# wget https://raw.github.com/pypa/pip/master/contrib/get-pip.py

[root@localhost]# python get-pip.py

curl -kL https://bootstrap.pypa.io/get-pip.py | sudo python

[root@localhost]# cd ssbc-master

[root@localhost ssbc-master]# pip install -r requirements.txt

2.创建ssbc数据库

[root@localhost ~]# service mariadb start //启动数据库

[root@localhost ~]# mysql -uroot -p

Enter password: (回车即可)

MariaDB [(none)]> create database ssbc default character set utf8;

MariaDB [(none)]> quit; //创建成功后退出

修改root密码

1.以root身份在终端登陆,必须

2.输入 mysqladmin -u root -p password root

后面的 root 是要设置的密码

3.回车后出现 Enter password

输入就密码,如果没有,直接回车

三.安装Sphinx

[root@localhost ssbc-master]# wget http://sphinxsearch.com/files/sphinx-2.2.9-1.rhel7.x86_64.rpm

[root@localhost ssbc-master]# yum install unixODBC unixODBC-devel postgresql-libs

[root@localhost ssbc-master]# rpm -ivh sphinx-2.2.9-1.rhel7.x86_64.rpm

然后在服务器根目录创建文件夹: data 和 tem (两个文件夹)

然后在 data 目录创建文件夹: bt

然后在 bt 目录创建文件夹: index

然后在 index 目录创建文件夹: db 和 binlog (两个文件夹)

然后在 tem 目录创建文件夹: downloads

最后 给 data 以及 tem 文件夹赋予 755 或者 777 权限 (需要继承到子文件夹)

[root@localhost ssbc-master]# indexer -c sphinx.conf --all (all 前面是空格减号减号)

[root@localhost ssbc-master]# searchd --config ./sphinx.conf (config前空格减号减号)

四.Web设置

[root@localhost ssbc-master]#

[root@localhost ssbc-master]# python manage.py makemigrations

[root@localhost ssbc-master]# python manage.py migrate

[root@localhost ssbc-master]# python manage.py runserver 0.0.0.0:8089 //启动ssbc

浏览器输入你的ip(如:54.43.43.43) 看网站是否能正常访问,正常则CTRL+C停止

[root@localhost ssbc-master]# python manage.py createsuperuser //输入用户名邮箱密码确认密码(创建管理账号)

[root@localhost ssbc-master]# nohup python manage.py runserver 0.0.0.0:8089 > /dev/zero & //将网站服务放在后台运行

五.开启爬虫(workers目录下)

安装 Python GeoIP库

pip install pygeoip

1.爬虫:执行:python simdht_worker.py (等2两分钟出现数据之后可以CTRL+C停止)

1.1 执行命令:nohup python simdht_worker.py >/dev/zero & (让爬虫在后台运行)

2.入库:执行:python index_worker.py (等待10分钟没有出现数据之后可以CTRL+C停止)

2.1 后台执行命令:nohup python index_worker.py >/dev/zero & (让爬虫在后台运行)

后台登陆:http://ip/admin

只允许自己的域名解析:

ssbc/settings.py

ALLOWED_HOSTS = ['www.smzdy.com',]

常见问题:

1.必须centos7吗?

非常建议使用centos7,centos6可能会有意想不到的错误

2.怎么查看入库的文件?

登录管理员后台,点击 Hashs

3.怎么查看每天入库了多少文件,以便清楚入库效率?

登录管理员后台,点击 Status reports

4.如何确认web服务器、采集、入库正在运行?

ps -ef|grep python

结果里面有

python manage.py runserver 0.0.0.0:80

python simdht_worker.py

python index_worker.py

即表示正在运行。

mariadb添加自启动 添加到服务。

systemctl enable mariadb.service

centos7 需要给予执行权限 chmod u+x /etc/rc.d/rc.local

在里面运行一个把所有服务的.sh文件,注意绝对路径和加延时

转载:http://blog.ouoshop.com/post/13.html

搜索中文出现错误:

'ascii' codec can't encode character u'。。。。

在search/timermiddleware.py

指定文件字符集为utf-8

在文件头部加入以下代码:

import sys

reload(sys)

sys.setdefaultencoding('utf-8')

2.爬虫运行时 可能会遇到如下问题:

Python and Django OperationalError (2006, 'MySQL server has gone away')

解决方法:

cd /etc/my.cnf.d

vi server.cnf

在# this is only for the mysqld standalone daemon

[mysqld]

后面加上

max_allowed_packet = 128M

128M或者更大

http://stackoverflow.com/questions/14163429/python-and-django-operationalerror-2006-mysql-server-has-gone-away

3、索引入库可能会出现如下问题

![10fa85f47f86bdbb.png][1]

进入mysql,执行一下语句

update search_hash set tagged=True where id=8947593;

这里的id换成你自己的id

还是不行就要重新索引,看后面文字说明↓↓↓↓

mariadb配置允许远程访问方式

首先配置允许访问的用户,采用授权的方式给用户权限

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'IDENTIFIED BY '123456' WITH GRANT OPTION;

说明:root是登陆数据库的用户,123456是登陆数据库的密码,*就是意味着任何来源任何主机反正就是权限很大的样子。

%可以用允许登陆的IP替换

最后配置好权限之后不应该忘记刷新使之生效

flush privileges;

临时解决蜘蛛会死掉的方法:

#!/bin/sh

simdhtpid=$(ps -ef|grep -v grep|grep "python simdht_worker.py"|awk '{print $2}')

kill -9 $simdhtpid

simdhtpid=$(ps -ef|grep -v grep|grep "python index_worker.py"|awk '{print $2}')

kill -9 $simdhtpid

sleep 1

cd /root/ssbc/workers

nohup python simdht_worker.py >/dev/zero &

nohup python index_worker.py >/dev/zero &

终极解决办法:

cd /etc/my.cnf.d

vi server.cnf

在# this is only for the mysqld standalone daemon

[mysqld]

后面加上

max_allowed_packet = 128M

128M或者更大

更换服务器迁移:

备份ssbc网站文件

备份数据库:

mysqldump -usmzdy -psmzdy.com --default-character-set=utf8 smzdy > smzdy.sql

在新服务器wget数据过去。

安装环境,

**不需要执行:**

python manage.py makemigrations

python manage.py migrate

安装好mariadb后,新建同名数据库,

导入wget过来的数据库:

mysql -usmzdy -psmzdy.com smzdy < smzdy.sql

导入完后

mysql -uroot -p

选择数据库:

use smzdy

update search_hash set tagged=0;

quit;

然后:

indexer -c sphinx.conf --all (all 前面是空格减号减号)

searchd --config ./sphinx.conf (config前空格减号减号)

cd worker

重新索引所有数据:

python index_worker.py

运行网站,即可

index_worker.py意外退出会导致错误,无法运行:

[root@localhost workers]# python index_worker.py

fetched 10000

Traceback (most recent call last):

File "index_worker.py", line 44, in

if work() == 10000:

File "index_worker.py", line 35, in work

(one['id'], one['name'], one['category'], one['length'], one['create_time'], one['last_seen']))

File "/usr/lib64/python2.7/site-packages/MySQLdb/cursors.py", line 205, in execute

self.errorhandler(self, exc, value)

File "/usr/lib64/python2.7/site-packages/MySQLdb/connections.py", line 36, in defaulterrorhandler

raise errorclass, errorvalue

_mysql_exceptions.ProgrammingError: (1064, "duplicate id '1'")

解决办法:

用上面的方法先清空tagged

mysql -uroot -p

选择数据库:

use smzdy

update search_hash set tagged=0;

quit;

然后:

备份/data /tem,然后删除这两个文件夹,重新各个新建文件夹和子文件夹,chmod 755 data -R chmod 777 /tem -R

indexer -c sphinx.conf --all (all 前面是空格减号减号)

searchd --config ./sphinx.conf (config前空格减号减号)

cd worker

重新索引所有数据:

python index_worker.py

[1]: http://www.smzdy.com/usr/uploads/2015/12/823242955.png

手撕包菜 mysql_新版手撕包菜安装教程相关推荐

  1. mysql官网下载最新版升级版本多版本安装教程

    mysql官网下载最新版升级版本多版本安装教程 有好多人经常问我有没有mysql的安装包,很是无语,因为问的很多 ,所以今天就写一个教程. 1.下载安装包 点击打开下载地址:mysql官网下载地址,打 ...

  2. 最新版傻妞及Web安装教程-2022.12.5

    目录 前言 一.sillyGirl机器人简介 前言 最新版傻妞及Web安装教程-2022.12.5 基本过程和老版差不多,命令和插件有区别

  3. 在新版win10上的Java安装教程(全网最全)

    在win10上的Java安装教程(全网最全) 前言 JAVA环境变量配置 一.JDK的下载与安装 二.JAVA环境变量配置 1.打开高级系统设置 2.然后选择环境变量 3.点击新建 4.配置JAVA_ ...

  4. 悟空crm配置mysql_超简单的悟空crm安装教程!看完不信你不会

    悟空CRM是一款开源的客户关系管理系统,采用PHP及JAVA架构.支持云服务SAAS服务,可为企业提供多种行业的CRM解决方案. 今天牛鹭学院就给大家讲讲如何在Linux下安装悟空crm. 前提条件: ...

  5. tokudb mysql_【MySQL】TokuDB引擎安装教程

    TokuDB引擎安装起来貌似有点麻烦,在这里做个笔记,安装几步走 Percona MySQL5.6安装 TokuDB引擎安装 第一步咱们直接省略,跟官方版本MySQL5.6安装方法基本相同,下面来写下 ...

  6. 无显示器u盘安装centos_最新版 CentOS 8.1.1911 安装教程及常见问题图文详解

    基于笔记本(华硕)操作,使用软碟通(UltraISO)制作的系统启动盘(U盘,内存大于8G)操作可自行百度,非常简单(或可留言,择情况出一期U盘制作启动盘教程). a.登录 centos 官网下载镜像 ...

  7. 最新版oracle 11g下载和安装教程

    下载: 第一步:去Oracle官网https://www.oracle.com 点击下载 第二步:找到数据库下载,选择 Database 11g Enterprise/Standard Edition ...

  8. OPPO 一加 真我 各种锁定 关闭失败 手撕 vivo iQOO 各种锁定 手撕

    OPPO 一加 真我 各种锁定 关闭失败 手撕 vivo iQOO 各种锁定 手撕 群 662823771 付款手撕

  9. 共度鸿蒙什么意思,逐月情缘游戏-逐月情缘手游官网最新版预约 v 1.0-apk3安卓网...

    逐月情缘手游官网版拥有大型唯美的浪漫东方仙境世界,体验庞大的剧情和三界震撼场景,邂逅你的三世情缘,携手共度鸿蒙,仙侣世界任你主宰,执手仗剑天涯体验修仙之旅,游戏设定了情侣双修系统,多样化的竞技战斗模式 ...

  10. 软件测试 | 手把手教你如何使用 Charles 抓包工具(电脑+手机端)

    软件测试 | 手把手教你如何使用 Charles 抓包工具(电脑+手机端) 一.Charles简介 二.Charles下载与安装 三.Charles配置 (1)Charles-PC端的配置如下: (2 ...

最新文章

  1. J - Fire! UVA - 11624
  2. 给表增加字段 本地测试正常 上传到服务器不正常
  3. 正则表达式和re模块知识点汇总
  4. 为提高访问速度建立本地文件服务器,html5 Application Cache——加快简历二次访问速度...
  5. 专访香侬科技:致力于让世界听到中文NLP的声音
  6. 【java】java 一个线程占用多少内存
  7. 被拘捕 353 天后,三星“太子”李在镕被判缓刑当庭获释!
  8. batocera游戏整合包_安装游戏时电脑报错?提示XXX文件缺失?一个软件完美解决...
  9. Python入门--列表的查询操作--获取列表知道那个元素的索引、获取列表中的单个元素、获取列表中的多个元素
  10. bandicam安装及使用教学
  11. 程序员不能错过的20个学习网站
  12. python 登录新浪微博_Python模拟新浪微博登录
  13. linux博通网卡驱动怎么安装,ubuntu14.04手动安装博通官方无线网卡驱动时报错,...
  14. 《企业大数据系统构建实战:技术、架构、实施与应用》一2.3 大数据制度和流程规范...
  15. 品优购项目-项目,背景,设计,文件夹,ico图标,网站优化三大标签,字体icomoon等介绍...
  16. 华三模拟器:路由备份路由聚合
  17. Lerna 基本概念
  18. antd菜单使用动态图标
  19. 【SSM直击大厂】第十章:Spring AOP面向切面编程
  20. 京东开放平台-卖家整体解决方案提供商

热门文章

  1. 质性数据分析软件NVivo的代码
  2. Webpower中国区发布《2015年中国酒店旅游行业邮件营销市场报告》
  3. Ant Design Vue下载本地文件(其他框架也适用)
  4. 摄影师伴侣——ON1系列摄影后期图像处理软件合集
  5. 微讲师录课软件下载、录屏软件下载
  6. 国密 java springboot 实现 maven依赖 SM2 SM3 SM4 介绍及示例代码 技术专家
  7. 01.Mirth Connect源码编译
  8. 骨龄测试软件app_有哪些特别好用的 app 测试工具?
  9. Inspinia_admin-V2.3原版(英文)
  10. 字母数字下划线常用正则表达式