DataWindowHTTP在linux环境的安装和测试

DataWindowHTTP在linux环境的安装和测试

*此非必要文档,如果在window环境使用,则无需参考。对于linux os,apache,php安装熟悉的朋友,也无需参考此文档的安装部分,只需要参考配置部分即可。

*最后修改日期:2023.08.20

产品附件说明,请勿转载他用。

目录:

一.安装虚拟机

二.安装linux

三.安装apache2.4

四.安装php8.0

五.安装MySQL8.0

六.安装DataWindowHTTP组件的服务器端

七.对接DataWindowHTTP组件的客户端

一.安装虚拟机

为了测试的方便性,采用在虚拟中安装linux来测试。这样方便做测试和截图。本文档截图以vmware12.0.0测试版作为实验。

二.安装linux

以客户实际生产环境选择linux。本组件的要求是:

① Apache2.4

② Php8.0

③ PHP能访问数据库的驱动。

本示例采用开源免费的centos7.0(CentOS-7-x86_64-DVD-1810.iso)作为测试。

注意事项:

1. 安装centos时,如果不熟悉全命令模式,需要选择GUI服务器。

选择GUI可以在图形界面搜索文件,用文本编辑器直接编辑文件,拷贝文件和文件夹等等。可以设置分辨率,网络等等。这都 不是初学者可以用全命令模式搞定的。

 

到这里时,点进去设置,选择:

 

  

但右边的选项我们不需要选择,不需要其他服务。

2. 登录时让我们输入一个名字,但是那个名字需要授权才能进行一些高权限操作。简单起见,用root登录GUI界面进行安装。

点“未列出?”输入root和密码。

     

3. 如果时钟锁屏了,你还未登录,请用鼠标点住时间画面并上滑,就显示出用户登录界面。单单用鼠标点击锁屏的时间画面,好像 是没法显示出登录界面的。

要避免锁屏的麻烦,可以取消锁屏:

  

4. 安装vmware tools工具。方便你复制粘贴,调整分辨率,共享文件夹等等。

 单击菜单     

  linux桌面光驱图标变这样。

     

  解压缩这个tar.gz执行里面的 ./vmware-install.pl 程序就行了。

     如果光盘不出现VMware-tools字样,你可以桌面光驱图标,点右键弹出,再重新点菜单进行挂载。

5. 打开网络

默认安装后,网络是关闭的。你需要打开

    

    

并且点击属性图标,设置启动时自动打开网络。(上右图)

 这两个服务要启动,否则显示网线已拔掉或者显示正在连接,却无法连接。

6. 共享文件夹

为方便测试,从window拷贝文件到linux。设置共享文件夹。

    

我们如果在这里新建了共享文件夹并确认后。

在linux主机的 /mnt/hgfs文件夹就会出现我们的window共享的文件夹(上右图)。就可以拷贝文件了

有时文件不出现,我们可以移除共享文件夹,再添加一次就行了。

或者,我们可以手工挂载,用命令挂载到linux系统,如:

mkdir /mnt/abc

vmhgfs-fuse .host:/shareddir /mnt/abc     (shareddir为共享文件夹名称)

7. 如何打开文件夹,或者查找文件。

Linux桌面>主文件夹>打开,只是进入用户自己的主目录。而我们操作的东西一般从跟目录算起。

所以首先定位到:

只要输入文件名或者文件夹名,就能搜索出文件或文件夹。

8. 如何查到虚拟机系统的IP(用于外部网页访问测试和数据库连接)

命令1:ipconfig(和window一样的命令)

命令2:ip addr

   红框内就是linux的IP。

9. 开防火墙的端口

默认防火墙都是不开端口的,外部无法访问80或者3306等端口。

firewall-cmd --zone=public --add-port=80/tcp --permanent (–permanent永久生效,没有此参数重启后失效)
firewall-cmd --zone=public --remove-port=端口号/tcp --permanent   (关闭端口)
firewall-cmd --reload         (重新加载生效)

10. 关闭和退出

经过测试,点击下图右上角的按钮关闭时,经常黑屏无法退出vmware。
 

     


尝试用命令:shutdown关机,却很正常,特此提示。

三.安装apache2.4

1. 命令:yum install httpd   安装过程中会问“is this ok [y/d/N]”,输入“y”回车即可。

2. 查询安装后的版本 httpd -v    正是我们需要的2.4版本。

3. 启动,重启,关闭命令

apachectl start  (service httpd start  systemctl start httpd.service

apachectl restart  (service httpd restart 或 systemctl restart httpd.service

apachectl stop   (service httpd stop  systemctl stop httpd.service

4. 开机自启动

默认开机得人工启动。可以在: /etc/rc.d/rc.local 文件中加入 apachectl start 命令行。并且设置rc.local以命令执行的权限。如下图:

      

     

上图已经将apache和MySQL都设置为开机自动启动。

5. 修改配置文件

/etc/httpd/conf/httpd.conf 用文本编辑器或者vi修改即可,主要修改项目:

5.1 修改端口(根据需要修改为80或者指定的端口):

Listen 80

5.2 网页文件夹(我们用默认不需要修改,在此仅列出)

DocumentRoot "/var/www/html"

6. 测试

可以在var/www/html中写一个静态网页。然后:

Wget localhost:80

已发出 HTTP 请求,正在等待回应... 200 OK   (200 OK就正常)

也可以在window的浏览器中输入linux的IP:端口,用浏览器进行访问。

四.安装PHP8.0

PHP有很多经典版本,比如5.7,但我们使用的是8.0.

yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

yum -y install https://rpms.remirepo.net/enterprise/remi-release-7.rpm

yum -y install yum-utils

yum-config-manager --disable 'remi-php*'

yum-config-manager --enable remi-safe

yum -y install php80

yum install php80-php-{cli,fpm,mysqlnd,zip,devel,gd,mbstring,curl,xml,pear,bcmath,json}

1. 查看安装后的版本

php -v

显示:PHP 8.0.30 (cli) (built: Aug  3 2023 17:13:08) ( NTS gcc x86_64 )

2. 测试php

/var/www/html目录写一个index.php(内含phpinfo()函数即可),可在浏览器中测试。

3. 配置修改

本例子不需要修改php.conf文件。

4. 其他扩展,比如oci8的oracle驱动安装

请参考其他php+oracle安装的资料。此处例子为php+mysql。所以不再赘述。

五.安装mysql8.0

下载rpm包:https://repo.mysql.com//mysql80-community-release-el7-7.noarch.rpm

rpm -ivh https://repo.mysql.com//mysql80-community-release-el7-7.noarch.rpm

yum info mysql-community-server

yum -y install mysql-community-server

1. 启动,重启mysql

systemctl start mysqld.service

systemctl restart mysqld.service

2. 查看安装的初始密码

grep "password" /var/log/mysqld.log   或者 cat /var/log/mysqld.log

显示:temporary password is generated for root@localhost: 6wzlpA&as.6d    最末的这串字符就是生成的密码。

3. 免密码登录

有时忘记密码,在my.cnf的[mysqld]下面添加:skip-grant-tables

然后: systemctl restart mysqld.service

mysql -u root    可免密码直接登录

4. 正常登录

mysql -u root -p

提示输入密码,就输入:6wzlpA&as.6d  (根据你安装时的密码或者修改后的密码)

进入后,会提示mysql>这个符号。我们测试一下。

输入一个sql语句。记得以分号结束。敲回车它就执行了。

输入exit可以退出mysql命令。

5. 修改密码

操作之前就要你修改密码才能进行sql查询。

提示:You must reset your password using ALTER USER statement before executing this statement.
命令:ALTER USER  'root'@'localhost'  IDENTIFIED BY ‘new password’;   注意@两边没空格。
提示:Your password does not satisfy the current policy requirements
原因:不符合密码策略,长度不够,或者不够复杂。长一点,数字,英文,符号一起用就行了。

6. Navicat的链接

7. 新建数据库以及导入数据库

      

上图左:手工新建三个数据库。  

上图右:选择 datawindowhttp1.0-1.sql,datawindowhttp1.0-2.sql,datawindowhttp1.0-3.sql执行即可创建测试数据库

注意这三个sql语句中包含了表,表中的测试数据,存储过程,函数等。

如果执行sql时遇到错误提示:

This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable)

 /etc/my.cnf配置参数log_bin_trust_function_creators=1

8. Root授权所有的外部IP而不局限于localhost

连接时会报错如下:

通过命令修改root可以连接的主机:

  select host from mysql.user where user='root'; (默认root只能localhost连接)
Update mysql.user set host = '%' where user ='root';  (改为不限制主机,或者按你要求修改)
注:生产环境我们一般是新创建其他用户,用于远程访问,并可授权到具体的IP。root仅供服务器登录以提高安全性。

9. Root无法连接数据库

连接数据库时报:Access denied for user 'root'@'localhost' (using password: YES)
修改Root的plugin密码方式: ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';

10. 组件post连不到apache

提示:Datawindowhttp连接时,mysqli_connect()提示Permission denied或者of_posturl()尝试多次发送不成功! 请检查服务器网址和端口是否正确!

     执行:setsebool -P httpd_can_network_connect 1

六.安装DataWindowHTTP组件的服务器端

将服务器组件目录拷贝到linux系统,位置:

var/www/html/datawindowhttp/datawindowhttp1.0-1

var/www/html/datawindowhttp/datawindowhttp1.0-2

var/www/html/datawindowhttp/datawindowhttp1.0-3

根据安装的数据库不同,只需要具体的一个,比如当前的例子:

var/www/html/datawindowhttp/datawindowhttp1.0-1/mysql8.0

var/www/html/datawindowhttp/datawindowhttp1.0-2/mysql8.0

var/www/html/datawindowhttp/datawindowhttp1.0-3/mysql8.0

编辑 config.mysql.php中的链接参数,其他文件无需修改。

七.对接DataWindowHTTP组件的客户端

拷贝一份demo 源码放到桌面上。

1. 执行初始化某个数据库的代码。

它执行的其实就是:uf_init_interface("mysql8.0")  这个函数。

当只要有一个数据库时,这个函数也可以直接写到open事件中。

2. 修改IP地址,端口,pem安全文件。

    

3. 测试查询。

配置好后,直接运行。就可以调试查看了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/84152.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

图片怎么转换成pdf格式?可以试试这样转换

图片怎么转换成pdf格式?图片转换成PDF格式是一个常见的需求,无论是为了方便存储还是为了分享文件,将图片转换成PDF格式都是一个不错的选择。有许多软件和在线工具可以帮助你完成这个任务,下面就给大家介绍一款转换工具。 【迅捷PD…

两款开箱即用的Live2d

目录 背景第一款:开箱即用的Live2d在vue项目中使用html页面使用在线预览依赖文件地址配置相关参数成员属性源码 模型下载 第二款:换装模型超多的Live2d在线预览代码示例源码 模型下载 背景 从第一次使用服务器建站已经三年多了,记得那是在2…

统一git使用方法,git状态变迁图,git commit提交规范

目录 说明 统一git使用方法 git状态变迁图 git commit 提交规范 说明 多次工作中多名员工不懂git多次技术分享,自行查资料学习git并使用,会出现使用各种偏僻的命令,异常问题无法解决;或出现带url的git合并提交。主要是学的不…

抖音短视频矩阵系统源码开发搭建技术开源分享

前言:抖音矩阵号/抖音短视频SEO矩阵系统源码开发,优化排名。 短视频获客系统支持短视频智能剪辑、短视频定时发布,短视频排名查询及优化,智能客服等,那么短视频seo系统开发时需要开发哪些功能呢?今天我就跟…

【CSS Grid网格布局】常用属性,示例代码解读

Grid布局是一种二维布局系统,可以将页面划分为行和列,并将元素放置在这些行和列的交叉点上。以下是Grid布局的一些常用属性: grid-template-columns/grid-template-rows:用于定义网格的列和行的大小和数量。可以指定具体的尺寸值…

STP知识总结

目录 生成树协议 导致问题 生成树 存在算法 1、802.1D 接口状态 收敛时间 结构变化 802.1D 缺点 2、PVST cisco私有 3、PVST 缺点 4、快速生成树 快速原理 边缘接口 5、MSTP/MST/802.1S 生成树协议 生成树协议是一种工作在OSI网络模型中第二层(数据链路层…

(排序) 剑指 Offer 51. 数组中的逆序对 ——【Leetcode每日一题】

❓剑指 Offer 51. 数组中的逆序对 难度:困难 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。 示例 1: 输入: [7,5,6,4] 输出: 5 限制&#xff…

生产环境下的终极指南:使用 Docker 部署 Nacos 集群和 MySQL

🌷🍁 博主猫头虎 带您 Go to New World.✨🍁 🦄 博客首页——猫头虎的博客🎐 🐳《面试题大全专栏》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~🌺 &a…

3种清除logo的方法,使其干净整洁 自然无痕

信息爆炸的时代,我们每天都和图片打交道经常会遇到一些带有水印的图片。这些水印可能是品牌的标志或者是版权信息,但有时候它们会干扰到我们对图片的欣赏和使用。那么,怎么去掉图片logo水印呢? 毕竟影响图片美感,使用也不方便&a…

eNSP综合小实验:VRRP、MSTP、Eth-Trunk、NAT、DHCP等技术应用

完成下图要求: 拓扑图: 配置命令: 由于交换机日志太多不便于复制,所以就复制命令。大概步骤如下: 第一步先分配IP地址,在sw1和sw2上创建VLAN100用于e0/0/3口配IP,在sw1、sw2、sw3、sw4上创建VL…

七夕节日表白:七大网页风格与其适用人群

🌷🍁 博主猫头虎 带您 Go to New World.✨🍁 🦄 博客首页——猫头虎的博客🎐 🐳《面试题大全专栏》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~🌺 &a…

【Spring Boot】JdbcTemplate数据连接模板 — 使用JdbcTemplate操作数据库

使用JdbcTemplate操作数据库 成功在Spring Boot项目中集成JdbcTemplate后,如何使用JdbcTemplate数据库连接模板操作数据库呢?接下来以示例演示JdbcTemplate实现学生信息的增、删、改、查等操作,让我们在实践中边学边用,更好地理解…

【算法刷题之数组篇(2)】

目录 1.leetcode-35. 搜索插入位置(简单)2.leetcode-74. 搜索二维矩阵(中等)3.leetcode-73. 矩阵置零(中等)4.leetcode-56. 合并区间(中等)5.leetcode-54. 螺旋矩阵(中等…

opencv进阶11-LBPH 人脸识别(人脸对比)

人脸识别的第一步,就是要找到一个模型可以用简洁又具有差异性的方式准确反映出每个人脸的特征。识别人脸时,先将当前人脸采用与前述同样的方式提取特征,再从已有特征集中找出当前特征的最邻近样本,从而得到当前人脸的标签。 OpenC…

电子电路学习笔记之SA1117BH-1.2TR——LDO低压差线性稳压器

关于LDO调节器(Low Dropout Regulator)是一种电压稳压器件,常用于电子设备中,用于将高电压转换为稳定的低电压。它能够在输入电压和输出电压之间产生较小的差异电压,因此被称为"低压差稳压器"。 LDO调节器通…

【vue】更改角色权限后,实现页面不刷新更改其可展示的导航菜单

登入的角色本身属于领导级别(集团权限),没有下级的不同权限: 切换不同身份(公司),以获得相应部门的不同导航菜单及权限 这里实现:更改角色权限后,实现页面 不刷新 更改…

安卓主板定制_电磁屏/电容屏安卓平板基于MTK联发科方案定制

定制化行业平板 在各行各业中的地位越来越重要,甚至在行业转型和发展中发挥着不可替代的作用。随着工业化社会的快速发展,工业生产对智控设备要求越来越高,运用的范畴也越来越普遍广泛,工业级平板就是其中一种应用广泛的设备。 新…

jenkins 日志输出显示时间戳的方式

网上很多方式比较片面,最新版插件直接使用即可无需更多操作。 使用方式如下: 1.安装插件 Timestamper 2.更新全局设置 系统设置-找到 Timestamper 勾选 Enabled for all Pipeline builds 也可修改时间戳格式。 帮助信息中显示 When checked, timesta…

R package org.Hs.eg.db to convert gene id

文章目录 install使用org.Hs.egENSEMBL将Ensembl id convert to gene idorg.Hs.egGENENAME 将Ensembl id convert to gene nameorg.Hs.egSYMBOL 将 gene symbol convert to gene id我现在有一些ensembl id 如何转为 gene name注意你会遇到一些record不全的情况,gtf文…

基于Element-ui的颜色选取器,增加最近使用的颜色。

8个预设颜色值&#xff0c;使用一个颜色后&#xff0c;将颜色放到第一个预设颜色&#xff0c;去重&#xff0c;保存到本地。 完整代码自取 <template><div><el-color-picker :value"value" show-alpha :predefine"predefineColors" chan…