双击此处添加文字
Linux下安装OurwayBI
来源: | 作者:佚名 | 发布时间: 2020-12-21 | 814 次浏览 | 分享到:
1.概述
1.1  Linux环境准备
Linux下安装OurwayBI
温馨提示:以下操作内容在CentOS7.6 以上英文版本的Linux下完成。如果是Ubuntu(Ubuntu版本要求>=16.04)可能有些命令做些转换。
Linux虚拟机下载地址: 点击跳转 
安装所需要用到的程序包跳转: 点击跳转
2.操作流程
2.1  安装Node和npm
(1)下载Node
(1.1)Linux联网下载
安装wget :   yum -y install wget


通过wget下载node包:
在 /root目录下输入
wget https://npm.taobao.org/mirrors/node/v12.14.1/node-v12.14.1-linux-x64.tar.xz

文件下载完成后

(2)解压Node软件包
解压该压缩文档,命令如下:
tar -xJf node-v12.14.1-linux-x64.tar.xz


(3)将解压后文件夹移动到/opt目录
将解压出的文件夹移动到/opt目录下,命令如下(须在/root目录下执行):
mv node-v12.14.1-linux-x64 /opt/

(4)拷贝node到/usr/local/bin目录下
将node拷贝到/usr/local/bin目录,命令如下:
cp /opt/node-v12.14.1-linux-x64/bin/node /usr/local/bin/


(5)拷贝node_modules文件夹到/usr/local/lib目录下
cp -r /opt/node-v12.14.1-linux-x64/lib/node_modules /usr/local/lib/


(6)创建npm链接到/user/local/bin目录
创建npm命令链接,命令如下:
 ln -s /usr/local/lib/node_modules/npm/bin/npm-cli.js /usr/local/bin/npm


2.2  安装PM2
(1)使用npm安装pm2模块
使用npm安装pm2模块,命令如下(此命令需要几分钟执行时间):
npm install pm2@2.10.3 -g

(2)验证安装结果
执行命令验证安装是否成功,命令如下:
    (2.1) node -v
    (2.2) npm -v


(3)淘宝镜像安装
配置淘宝镜像,命令如下
npm install -g cnpm
成功效果类似下图:


2.3  安装Redis
新环境安装redis前要安装 gcc++
yum install gcc-c++ libstdc++-devel
安装过程 
yum install cpp 
yum install binutils 
yum install glibc 
yum install glibc-kernheaders 
yum install glibc-common 
yum install glibc-devel 
yum install gcc 
yum install make
注意:gcc依赖了很多东西,有些包可能系统已经 装了,有些没有,防止出意外,最好都走一遍。
https://blog.csdn.net/sinat_32849651/article/details/74424868
(1)下载解压Redis
安装Redis,命令如下:
(1.1)获取redis资源
  wget http://download.redis.io/releases/redis-4.0.8.tar.gz
(1.2)解压
  tar xzvf redis-4.0.8.tar.gz
(1.3)安装
  cd redis-4.0.8
     make
      cd src
      make install
     //
(2)将可执行文件拷贝到/usr/redis目录下
在/usr目录下创建redis文件夹,将安装目录中src目录下的三个可执行文件拷贝到redis目录下,命令如下:
    (2.1)mkdir /usr/redis
    (2.2)cd src
    (2.3)cp redis-server /usr/redis
    (2.4)cp redis-benchmark /usr/redis
    (2.5)cp redis-cli /usr/redis
(3)启动Redis服务,并测试是否启动成功
启动redis服务
   (3.1)cd /usr/redis
   (3.2)redis-server
执行redis-server后,命令行会阻塞,需要在另一个终端测试:
   (3.3)redis-cli
   (3.4)set foo bar
   (3.5)get foo


2.4  安装配置Oracledb(若没有Oracle数据源,跳过此章节)
请确认服务器上的gc++版本高于4.7及以上。不然安装oracle客户端不成功(影响:不能连接oracle数据源),可(请点击)参考文献
(1)移动文件到/opt/oracle
将下载到的instantclient-basic-linux.x64-19.5.0.0.0dbru.zip 与instantclient-sdk-linux.x64-19.5.0.0.0dbru.zip文件放入/opt/oracle目录下,文件下载需Oracle账户(可免费注册)。
同意Oracle协议,进入下载界面: 点击进入下载界面





(在这一步骤,在外界下载完毕的文件传入centOS后可能会遇到解压失败问题,建议在centOS内联网下载)
(2)解压归档压缩包并重命名文件
将下载到的两个归档压缩文件解压放到 /opt/oracle目录下,并对文件夹instantclient_12_2重命名,命令如下:yum install -y unzip zip
在/opt/oracle目录下
mkdir /opt/oracle
cd /opt/oracle
unzip instantclient-basic-linux.x64-19.5.0.0.0dbru.zip
unzip instantclient-sdk-linux.x64-19.5.0.0.0dbru.zip
(3)目录/root/Cross/  并将三个文件夹放入
创建目录/root/Cross/  并将BI程序的三个文件夹放入到此Cross文件夹中,创建文件夹命令如下:
     (3.1)cd /root
     (3.2)mkdir Cross
(4)进入Cross_SBI_API文件夹,添加临时环境变量
添加临时变量命令如下:
    (4.1)cd /root/Cross/Cross_SBI_API
    (4.2)export LD_LIBRARY_PATH=/opt/oracle/instantclient:$LD_LIBRARY_PATH
    (4.3)export OCI_LIB_DIR=/opt/oracle/instantclient
    (4.4)export OCI_INC_DIR=/opt/oracle/instantclient/sdk/include
(本步骤添加环境变量为临时变量,重启失效,添加永久变量方法参见(5)
(5)添加存档(永久)环境变量
使用vim打开隐藏配置文件,添加环境变量语句,保存后关闭:
首先下载vim:yum install vim
    (5.1)vim~/.bashrc(此命令需root用户使用)
    (5.2)添加以下三行
     export LD_LIBRARY_PATH=/opt/oracle/instantclient:$LD_LIBRARY_PATH
     export OCI_LIB_DIR=/opt/oracle/instantclient
     export OCI_INC_DIR=/opt/oracle/instantclient/sdk/include
    (5.3)保存后退出,重启终端
命令执行效果如下图所示:



(6)查看环境变量配置是否成功
查询环境变量是否配置成功,命令如下:
      echo $变量名称


(7)使用npm安装oracledb
通过npm添加oracle模块,命令如下:
   (7.1)cd /root/Cross/Cross_SBI_API
   (7.2)npm install oracledb
   (7.3)cd /root/Cross/Cross_Task
   (7.4)npm install oracledb
执行效果类似下图



2.5  服务启动
将ourwaybi Cross对应的文件复制到linux虚拟机内root/Cross/目录下
备用命令【解压缩】:yum install -y unzip zip
(1)安装服务模块
在三个目录下分别执行cnpm i命令,命令如下:
   (1.1)cd /root/Cross/Cross_SBI
   (1.2)cnpm i
   (1.3)cd /root/Cross/Cross_SBI_API
   (1.4)cnpm i
   (1.5)cd /root/Cross/Cross_Task
   (1.6)cnpm i
执行效果类似下图:
若遇到提示错误,再执行一次就行(有可能某些是因为网络原因导致执行不成功)
(2)启动服务
创建ourwaybi启动脚本,命令如下
cd /root/
vim startbi.sh
添加以下六行
cd /root/Cross/Cross_SBI
npm run pm2
cd /root/Cross/Cross_SBI_API
npm run pm2
cd /root/Cross/Cross_Task
npm run pm2
效果如下图


保存退出
运行脚本:sh startbi.sh
效果如下图


如果重启了linux系统,除了要启动上面3个服务外,还要启动 redis-server服务
2.6  其他问题解决办法汇总
Centos 下使用wget安装mysql8.0.19
(1)进入usr相关文件夹,下载安装文件
cd /usr/local/src
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.19-el7-x86_64.tar.gz
解压  
tar -zxvf mysql-8.0.19-el7-x86_64.tar.gz
复制 
cp -r mysql-8.0.19-el7-x86_64 /usr/local/mysql
创建mysql数据存放目录
mkdir /usr/local/mysql/mysqldb
给安装目录赋予权限
chmod -R 777 /usr/local/mysql
chmod -R 777 /usr/local/mysql/mysqldb
(2)添加系统mysql组和mysql用户 
添加系统mysql组   
 groupadd mysql
添加mysql用户  //(添加完成后可用id mysql查看)
useradd -r -g mysql mysql 
(3)安装数据库
切到mysql目录
cd /usr/local/mysql
修改当前目录拥有者为mysql用户
chown -R mysql:mysql ./
创建mysql安装初始化文件 加入以下配置保存*/
vim /etc/my.cnf
输入以下内容
[mysqld]
port=3306
basedir=/usr/local/mysql
datadir=/usr/local/mysql/mysqldb
max_connections=10000
max_connect_errors=10
character-set-server=utf8
default-storage-engine=INNODB
default_authentication_plugin=mysql_native_password
[mysql]
default-character-set=utf8
[client]
port=3306
default-character-set=utf8


安装数据库并生成随机密码
cd /usr/local/mysql/bin 
./mysqld –initialize –console


cd ../support-files
chmod -R 777 /usr/local/mysql /*重新赋予权限*/
启动mysql
./mysql.server start /*启动mysql*/


将mysql加入到系统进程中
cp mysql.server /etc/init.d/mysqld 将mysql加入到系统进程中
重启mysql服务
service mysqld restart
cd ../bin
登录mysql*
./mysql -uroot -p刚刚初始化安装时的密码
修改密码为root
mysq> alter user ‘root’@’localhost’ IDENTIFIED WITH mysql_native_password BY ‘root’;
加入系统环境变量
vi /etc/profile
加入export PATH=$PATH:/usr/local/mysql/bin即可
执行链接命令
ln -s /usr/local/mysql/bin/mysql /usr/bin
启动mysql时出现错误:
Starting MySQL.2020-01-15T03:29:27.625840Z mysqld_safe error: log-error set to ‘/var/log/mariadb/mariadb.log’, however file don’t exists. Create writable for user ‘mysql’.
ERROR! The server quit without updating PID file (/var/lib/mysql/localhost.localdomain.pid).
输入命令
mkdir /var/log/mariadb/
touch /var/log/mariadb/mariadb.log
chown -R mysql:mysql /var/log/mariadb/
删除文件/etc/my.cnf里的
socket=/var/lib/mysql/mysql.sock