mysql稽核平臺yearning及inception安裝
#粗糙的文件
#安裝目錄在/usr/local下面
#yearning安裝包 因為太大 附件無法存放 所以我放在自己的126郵箱了
nginx安裝
yum install nginx -y
inception安裝
yum -y install cmake libncurses5-dev libssl-dev g++ bison gcc gcc-c++ openssl-devel ncurses-devel mysql MySQL-python
wget http://ftp.gnu.org/gnu/bison/bison-2.5.1.tar.gz
tar -zxvf bison-2.5.1.tar.gz
cd bison-2.5.1
./configure
make
make install
cd /usr/local/
wget https://github.com/myide/inception/archive/master.zip
unzip master.zip
cd inception-master/
sh inception_build.sh builddir linux
啟動服務
nohup /usr/local/inception-master/builddir/mysql/bin/Inception --defaults-file=/etc/inc.cnf &
登入inception
mysql -uroot -h127.0.0.1 -P6669
測試inception是否安裝成功
inception get variables;
-----------------------
安裝python 3.6
wget https://www.python.org/ftp/python/3.6.6/Python-3.6.6.tgz
tar -xvf Python-3.6.4.tar.xz
mkdir -p /usr/local/python/3.6.4/lib
cd Python-3.6.4
./configure --enable-shared --prefix=/usr/local/python/3.6.4 LDFLAGS="-Wl,-rpath /usr/local/python/3.6.4/lib"
make
make install
cp /usr/bin/python /usr/bin/python2.6.6
ln -fs /usr/local/python/3.6.4/bin/python3.6 /usr/bin/python
ln -fs /usr/local/python/3.6.4/bin/pip3 /usr/bin/pip
vi /usr/bin/yum
將頭部 #!/usr/bin/python 修改為 #!/usr/bin/python2.6.6
-----------------------
yearning安裝
進入mysql 執行建庫語句 建立庫Yearning
create database Yearning DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
安裝此版本壓縮包
Yearning-1.1.2-release.tar.gz(暫時存放在152環境/usr/local/下面)
#yearning安裝包 因為太大 附件無法存放 所以我放在自己的126郵箱了
不要用最新的版本 如下命令下載的是最新的壓縮包(需要docker安裝不適用)
git clone https://github.com/cookieY/Yearning.git
cd Yearning/src
pip install -r requirements.txt
python manage.py makemigrations
python manage.py migrate
新增初始化使用者
echo "from core.models import Account;Account.objects.create_user(username='admin', password='Yearning_admin', group='admin',is_staff=1)" | python manage.py shell #新增初始化使用者
echo "from core.models import grained;grained.objects.get_or_create(username='admin', permissions={'person': [], 'ddl': '1', 'ddlcon': [], 'dml': '1', 'dmlcon': [], 'dic': '1', 'diccon': [], 'dicedit': '0', 'user': '1', 'base': '1', 'dicexport': '0', 'query': '1', 'querycon': []})" | python manage.py shell #初始化許可權
-----下面這個有可能 執行不了。。。可以忽略 沒關係
echo "from core.models import globalpermissions; globalpermissions.objects.get_or_create(authorization='global', inception={'host': '', 'port': '', 'user': '', 'password': '', 'back_host': '', 'back_port': '', 'back_user': '', 'back_password': ''}, ldap={'type': '', 'host': '', 'sc': '', 'domain': '', 'user': '', 'password': ''}, message={'webhook': '', 'smtp_host': '', 'smtp_port': '', 'user': '', 'password': '', 'to_user': '', 'mail': False, 'ding': False}, other={'limit': '', 'con_room': ['AWS', 'Aliyun', 'Own', 'Other'], 'foce': '', 'multi': False, 'query': False, 'sensitive_list': [], 'sensitive': ''})" | python manage.py shell #初始化動態配置資訊
cd Yearning/webpage/dist
cp -rf * /usr/share/nginx/html/
service nginx restart
cd Yearning/src
python manage.py runserver 0.0.0.0:8000
-------------------
下面是有可能出現的錯誤
有可能會出現如下錯誤
網路連線https://blog.csdn.net/zoulonglong/article/details/79552813
python3.6 錯誤: ModuleNotFoundError:No module named "Crypto"
原因及處理:
在使用python是經常會用到import一個第三方庫,但是有時候會提示某個模組不存在,如Crypto
其實是因為Python3裡面這個模組的名字變了,
pip install pycrypto試試
安裝成功後,如果還是提示沒有該模組,那就python3的安裝目錄Lib—-site-package中檢視是否有Crypto資料夾,這時你應該看到有crypto資料夾,將其重新命名為Crypto即可
如果又出現另一個提示說沒有Crypto.Cipher,“ModuleNotFoundError:No module named ‘Crypto.Cipher’”,那就去Crypto資料夾下看,是否存在Cipher資料夾,這時你會發現,咦,不存在,看第4步
這時你需要解除安裝pycrypto,pip uninstall pycrypto,然後安裝pycryptodome,pip install pycryptodome,即可
有可能出現如下錯誤
網路連線https://blog.csdn.net/dearmark/article/details/78208051
ValueError: invalid literal for int() with base 10: 'Inception2'
原因如下
由於Inception 並不原生支援pymysql,所以需更改pymysql相關原始碼 注: 在install 資料夾下已經修改的connections.py 和 cursors.py 直接替換即可
connections.py
cursors.py
查詢pymysql原始碼修改connections.py檔案
找到1107行
def _request_authentication(self):
# https://dev.mysql.com/doc/internals/en/connection-phase-packets.html#packet-Protocol::HandshakeResponse
if int(self.server_version.split('.', 1)[0]) >= 5:
self.client_flag |= CLIENT.MULTI_RESULTS
修改為
def _request_authentication(self):
# https://dev.mysql.com/doc/internals/en/connection-phase-packets.html#packet-Protocol::HandshakeResponse
try:
if int(self.server_version.split('.', 1)[0]) >= 5:
self.client_flag |= CLIENT.MULTI_RESULTS
except:
if self.server_version.split('.', 1)[0] == 'Inception2':
self.client_flag |= CLIENT.MULTI_RESULTS
查詢 pymysql 原始碼修改 cursors.py檔案
找到346行
if self._result and (self._result.has_next or not self._result.warning_count):
return
修改為
if self._result:
return
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/30127122/viewspace-2645448/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Yearning + Inception SQL稽核平臺搭建SQL
- docker Yearning+Inception SQL稽核平臺DockerSQL
- MySQL Inception安裝使用MySql
- MySQL Inception For Linux安裝初探MySqlLinux
- mysql安裝及配置MySql
- MySQL 8.0.21下載安裝教程及Navicat for MySQL安裝MySql
- mysql安裝------RPM包安裝及解除安裝MySql
- mysql安裝-----二進位制包安裝及解除安裝MySql
- mysql cluster 一臺server安裝MySqlServer
- Mysql安裝及基礎配置MySql
- Navicat for MySQL安裝及使用教程MySql
- debian安裝及使用mysqlMySql
- homebrew下載安裝及mysql的下載安裝MySql
- 多核平臺下的JAVA優化Java優化
- MYSQL安裝教程及sqlyog初次使用MySql
- windows安裝及配置mysql5.7WindowsMySql
- MySql安裝及整合Hive手冊MySqlHive
- Supported Platforms: MySQL Database MySQL安裝支援的平臺PlatformMySqlDatabase
- 伺服器安裝docker 以及使用docker安裝mysql及svn伺服器DockerMySql
- 一臺server上安裝mysql cluster(轉)ServerMySql
- MySQL介紹及安裝與多例項MySql
- 基於docker的mysql安裝及配置DockerMySql
- MySQL 原始碼安裝及yum的使用MySql原始碼
- mysql-inception自動化運維MySql運維
- MySQL 5.7.21 Linux平臺安裝 Part 2MySqlLinux
- 一臺機器上安裝兩個MysqlMySql
- MySQL免編譯安裝及登入(5.6.36)MySql編譯
- mysql5.7安裝及問題處理MySql
- MySQL資料庫下載及安裝教程MySql資料庫
- mysql安裝 (yum 安裝)MySql
- Windows平臺下安裝與配置MySQL9WindowsMySql
- Windows平臺下安裝與配置MySQL5.7WindowsMySql
- mysql 安裝MySql
- MySQL安裝MySql
- 安裝mysqlMySql
- solaris mysql 安裝 解除安裝MySql
- docker安裝及解除安裝Docker
- 6.linux->MySQL 安裝及效能測試LinuxMySql