机缘巧合要部署个Sakai 20.0 Binary版本,记录一下分享给有需要的朋友。

本章只讲部署过程,Sakai到底是个啥我也还没太搞明白,要是看开发的朋友可以直接略过了。

所需环境:

1、Linux 或 Windows Server(本章以Windows平台做部署目标,系统为Windows Server 2012);

2、Java 1.8;

3、Tomcat 8/9;

4、Maven 3.6;

5、MySQL(我使用的版本较老为5.1,8.0+因为有的SQL语句修改了,第一次部署出了状况但不确定是SQL的问题);

6、MySQL Connector Jar(版本对应MySQL);

7、default.sakai.porperties(后面提供下载地址)。

环境配置:

1、Java环境配置

安装JDK和JRE,安装完成后添加环境变量JAVA_HOME为JDK安装路径,在系统PATH变量中添加JDK安装路径/bin,在cmd中测试java -version跳出版本信息即配置完毕。

2、Maven环境配置

解压Maven并重命名文件夹为Maven,添加环境变量MAVEN_HOME为Maven文件夹路径,在系统PATH变量中添加MAVEN文件夹路径/bin,在cmd中测试mvn -version跳出版本信息即配置完毕。

3、Tomcat环境配置

解压Tomcat并重命名文件夹为Tomcat,添加环境变量CATALINA_HOME为Tomcat文件夹路径,在系统PATH变量中添加Tomcat文件夹路径/bin。

4、MySQL环境配置

解压MySQL并重命名文件夹为MySQL,添加环境变量MySQL_HOME为MySQL文件夹路径,在系统PATH变量中添加MySQL文件夹路径/bin。

在MySQL文件夹下建立my.ini配置文件,内容为如下(具体路径按实际情况更改,注意为斜杠):

[mysqld]
basedir=C:/MySQL
datadir=C:/MySQL/data

从cmd中进入MySQL/bin(这一步有坑,如果不不进入bin文件夹进行配置,服务开启会提示找不到文件),键入命令mysqld --initialize,执行MySQL初始化操作,新版的MySQL会在data文件夹中生成一个err后缀的文件,初始密码就在文件中,老版本的没有root用户初始密码。初始化完毕后,使用mysqld --install mysql创建MySQL服务,然后使用net start mysql开启MySQL服务。

服务运行后,输入mysql -u root -p连接数据库,密码根据实际情况输入,如果顺利键入quit退出。

5、Sakai环境配置

将Sakai 20.0 Binary压缩包中所有内容直接解压至Tomcat目录下即可。

部署过程:

1、将与MySQL版本对应的MySQL Connector Jar拷贝至Tomcat/lib目录下;

2、在Tomcat/bin文件夹下新建文件setenv.bat,内容如下:

set JAVA_OPTS=-server -Xmx1028m -XX:MaxMetaspaceSize=512m -Dorg.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING=false -Djava.awt.headless=true -Dcom.sun.management.jmxremote -Dhttp.agent=Sakai -Djava.util.Arrays.useLegacyMergeSort=true -Dfile.encoding=UTF8

3、编辑Tomcat/conf/content.xml文件,在<Context>块中增加如下内容

<JarScanner><!-- This is to speedup startup so that tomcat doesn't scan as much --><JarScanFilter defaultPluggabilityScan="false" />
</JarScanner>

4、编辑Tomcat/conf/server.xml文件,搜索内容“Connector port”,在此之后增加 URIEncoding="UTF-8",即

<Connector port="8080" URIEncoding="UTF-8" ...

5、在Tomcat路径下新建文件夹Sakai,下载一份default.sakai.properties,或在源码路径sakai-src/config/configuration/bundles/src/bundle/org/sakaiproject/config/bundle/default.sakai.properties中复制一份到文件夹中,下载地址如下:https://github.com/sakaiproject/sakai/blob/master/config/configuration/bundles/src/bundle/org/sakaiproject/config/bundle/default.sakai.properties

将【default.sakai.properties】重命名为【sakai.properties】

搜索username@javax,取消默认的注释,将数据库的用户名与密码修改为如下(此处可根据实际情况修改):

username@javax.sql.BaseDataSource=sakaiuser
password@javax.sql.BaseDataSource=sakaipassword

搜索MySQL,将注释符号全部去掉,修改后如下:

vendor@org.sakaiproject.db.api.SqlService=mysql
driverClassName@javax.sql.BaseDataSource=com.mysql.jdbc.Driver
hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect
url@javax.sql.BaseDataSource=jdbc:mysql://127.0.0.1:3306/sakaidatabase?useUnicode=true&characterEncoding=UTF-8
validationQuery@javax.sql.BaseDataSource=select 1 from DUAL
defaultTransactionIsolationString@javax.sql.BaseDataSource=TRANSACTION_READ_COMMITTED

此处注意!

Git上下载的文件连接地址可能是mysql://127.0.0.1:3306/sakai 而不是 sakaidatabase,此处要根据下面步骤建立的数据库名确定连接地址,避免不必要的错误!

6、登陆MySQL,键入如下SQL命令:

create database sakaidatabase default character set utf8;
grant all on sakaidatabase.* to sakaiuser@'localhost' identified by 'sakaipassword';
grant all on sakaidatabase.* to sakaiuser@'127.0.0.1' identified by 'sakaipassword';
flush privileges;

如果正常应该是如下:

mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 272
Server version: 5.1.46 MySQL Community Server (GPL)Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL v2 licenseType 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> create database sakaidatabase default character set utf8;
Query OK, 1 row affected (0.00 sec)mysql> grant all on sakaidatabase.* to sakaiuser@'localhost' identified by 'sakaipassword';
Query OK, 0 rows affected (0.00 secmysql> grant all on sakaidatabase.* to sakaiuser@'127.0.0.1' identified by 'sakaipassword';
Query OK, 0 rows affected (0.00 sec)mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)mysql> quit

7、在cmd中键入startup,打开Tomcat服务,等待数分钟运行后,浏览器中打开127.0.0.1/portal即可。

Sakai 20.0 部署相关推荐

  1. KubeEdge 1.3.0 部署

    本文介绍了如何在两台 ubuntu 16.04 64 bit 双核 CPU 虚拟机上从源码开始部署 KubeEdge 1.3.0 集群的过程,云端 Kubernetes 版本为 1.17.3,Gola ...

  2. Centos containerd和kubernetes v 1.24.0部署

    containerd和kubernetes v 1.24.0 install method 1.24版本包含2项重要变更: 1,移除Dockershim 2,默认关闭各Beta APIs Centos ...

  3. minikube v1.20.0版本的一个bug

    近期在研究dapr(分布式应用运行时)[1],这是一个很朴素却很棒的想法,目前大厂,如阿里和鹅厂都有大牛在研究该项目,甚至是利用dapr落地了部分应用.关于dapr,后续我也会用单独的文章详细说说. ...

  4. OpenShift 容器平台社区版 OKD 4.10.0部署--基于VSphere

    参考:OpenShift 容器平台社区版 OKD 4.10.0部署 OpenShift - 部署 OKD 4.5_51CTO博客_openshift 部署 一.Openshift简介 RedHat O ...

  5. ubuntu 20.04 部署SS5详解

    ubuntu 20.04 部署SS5详解 前言 一.SS5部署前提? 二.部署步骤 1.更新软件包 2.ss5部署 常用命令 前言 提示:仅供交流学习,如有问题可以可以评论区留言: 提示:以下是本篇文 ...

  6. Win2008上.NET4.0部署出错HTTP 错误 500.21 - Internal Server Error的解决方法

    Win2008上.NET4.0部署出错HTTP 错误 500.21 - Internal Server Error的解决方法 参考文章: (1)Win2008上.NET4.0部署出错HTTP 错误 5 ...

  7. 全网最新 Skywalking 6.1.0部署进k8s 包含springcloud测试用例

    skywalking-kubernetes 该项目可以迅速将skywalking 6.1.0部署进kubernetes(k8s) 包含ui oap es模块和完整的springcloud测试用例 此外 ...

  8. linux下安装虚拟天文馆,如何在Ubuntu 20.04、18.04中安装Stellarium 0.20.0虚拟天文馆

    如何在Ubuntu 20.04.18.04中安装Stellarium 0.20.0虚拟天文馆 几天前发布了Stellarium 0.20.0,它时一个免费开源的桌面虚拟天文馆软件.以下是在Ubuntu ...

  9. Debian 和Ubuntu Mono 3.0 部署包

    Mono 3.0 刚发布,Debian 的Mono打包工作也开始了, 这篇博客<Mono 3.0 Preview Packages for Debian and Ubuntu >讲述了De ...

  10. 假设用于通信的电文由字符集{a,b,c,d,e,f,g}中的字母构成。 它们在电文中出现的频度分别为{0.31,0.16,0.10,0.08,0.11,0.20,0.04}。【MOOC答案】

    目   录 1.题目 2.答案and详细题解过程 1)为这7个字母设计哈夫曼编码: 1.1.答案 1.2.详细题解过程 2)为这7个字母设计等长编码,至少需要几位二进制数?[3位] 2.1.答案 2. ...

最新文章

  1. 通俗解释协方差与相关系数
  2. PHP的urlencode
  3. 洛谷 - P3899 [湖南集训]谈笑风生(dfs序+主席树/二维数点)
  4. 弱口令扫描工具mysql ftp_基于端口的弱口令检测工具--iscan
  5. Java——集合(练习题)
  6. ActiveRecord模式整理
  7. 大脑应对危机的模式_危机的完整形式是什么?
  8. 数据结构基础(16) --树与二叉树
  9. DockOne微信分享(一三一):Juice——一种基于MesosFramework的任务云框架
  10. ajax post请求怎么传参_如何在$ ajax POST中传递参数?
  11. linux安装java路径_Linux环境中查看java的安装路径,设置环境变量
  12. 华为、阿里、京东停止社招转外包:头部公司们的谋局
  13. html 上标下标 特殊字符等
  14. 函数名称修饰符__cdelcl __fastcall 与__stdcall
  15. Java—读取指定路径下文件的内容
  16. 数字逻辑实验-交通灯控制设计
  17. Java下载excel文件并且添加水印效果
  18. Kubernetes 调整 nodePort 端口范围
  19. 史玉柱和他老同学的一段故事
  20. 全网最使用MySQL, JSP, Bean, JDBC(连接数据库) ,制作有权限(老师,学生,辅导员) 用户登录demo,表单查看demo

热门文章

  1. 在ARM+LINUX上使用pppd拔号上网(GPRS)流程
  2. 汤国安《地理信息系统教程》(第二版)笔记(1)——概论
  3. 一些微信小程序demo地址记录分享
  4. 四叶草Clover引导界面的快捷键大全
  5. 【UnityDragonBones】纸娃娃(一)替换身体部位图片
  6. 基于Java的实现宠物管理系统的设计与实现
  7. 缠论中枢python源码_缠论中枢主图指标 源码 通达信 贴图 自动画笔
  8. java 中xsd文件在哪_在Java Eclipse项目中存储XSD文件的约定 - java
  9. 队列仿真一个银行叫号系统
  10. Unity网络教程翻译(三)多人游戏大厅