2021年6月

 在任务管理器中看到sql server 2000进程的内存占用,而在sql server 2005中,不能在任务管理器中查看sql server 2005进程的内存占用,要用

以下语句查看sql server 的实际内存占用:

select * from sysperfinfo where counter_name like '%Memory%'

其中, Total Server Memory 表示内存占用。

 

select locked_page_allocations_kb  from sys.dm_os_process_memory
Select sum(awe_allocated_kb)  as [AWE allocated, kb] From sys.dm_os_memory_clerks

 

要适当限制sql server 的内存占用,要给sql server设置最大值,不要把物理内存全部给sql server,要给windows系统保留适当大小的内存。

对于大物理内存,要在windows server 2003系统的boot.ini中增加 /PAE 参数,如果是AMD的CPU,还要加 /usepmtimere 参数,要在本地组策略里设置“锁定内存中的页”,在sql erver 2005 中选中AWE,并设置最小值和最大值, 重启服务器或sql server服务即可,详细请参考windows server 2003和sql server 2005中的“启用对4GB以上物理内存的支持”的帮助文档。

 

 

 

一、sql 数据库CPU瓶颈

对于SQL Server的一个工作进程的状态有很多,主要状态有运行中(RUNNING)、可运行(RUNNABLE)和挂起(SUSPENED)3种。

通过查看系统监视计数器Processor:% Processor Time,可以确定CPU瓶颈。如果这个计数器的值很高。比如持续15-20分钟超80%,就意味着CPU出现了瓶颈。


当您怀疑计算机硬件是影响SQL Server运行性能的主要原因时,可以通过SQL Server Performance Monitor监视相应硬件的负载,以证实您的猜测并找出系统瓶颈。下文将介绍一些常用的分析对象及其参数。

  Memory: Page Faults / sec

  如果该值偶尔走高,表明当时有线程竞争内存。如果持续很高,则内存可能是瓶颈。

  Process: Working Set

  SQL Server的该参数应该非常接近分配给SQL Server的内存值。在SQL Server设定中,如果将"set working set size"置为0, 则Windows NT会决定SQL Server的工作集的大小。如果将"set working set size"置为1,则强制工作集大小为SQLServer的分配内存大小。一般情况下,最好不要改变"set working set size"的缺省值。

  Process:%Processor Time

  如果该参数值持续超过95%,表明瓶颈是CPU。可以考虑增加一个处理器或换一个更快的处理器。

  Processor:%Privileged Time

  如果该参数值和"Physical Disk"参数值一直很高,表明I/O有问题。可考虑更换更快的硬盘系统。另外设置Tempdb in RAM,减低"max async IO","max lazy writer IO"等措施都会降低该值。

  Processor:%User Time

  表示耗费CPU的数据库操作,如排序,执行aggregate functions等。如果该值很高,可考虑增加索引,尽量使用简单的表联接,水平分割大表格等方法来降低该值。

  Physical Disk:Avg.Disk Queue Length

  该值应不超过磁盘数的1.5~2倍。要提高性能,可增加磁盘。

  注意:一个Raid Disk实际有多个磁盘。

  SQLServer:Cache Hit Ratio

  该值越高越好。如果持续低于80%,应考虑增加内存。 注意该参数值是从SQL Server启动后,就一直累加记数,所以运行经过一段时间后,该值将不能反映系统当前值。



检测CPU压力的另一个方法是计算可运行状态下的工作进程数量,通过执行如下的DMV查询可以得到这个信息:

SELECT COUNT(*) AS workers_waiting_for_cpu, t2.Scheduler_id

FROM sys.dm_os_workers AS t1, sys.dm_os_schedulers AS t2

WHERE t1.state = 'RUNNABLE' AND t1.scheduler_address=t2.scheduler_address

AND t2.scheduler_id < 255

GROUP BY t2.scheduler_id

也可以执行如下的查询得到工作进程在可运行状态下花费的时间:

SELECT SUM(signal_wait_time_ms) FROM sys.dm_os_wait_stats

下面查询是找出每次执行占用CPU最多的前100位查询:

SELECT TOP 100 total_worker_time/execution_count AS avg_cpu_cost, plan_handle, execution_count,

(SELECT SUBSTRING(text, statement_start_offset/2+1,

(CASE WHEN statement_end_offset = -1 THEN LEN(CONVERT(nvarchar(max), text)) * 2

ELSE statement_end_offset END - statement_end_offset)/2)

FROM sys.dm_exec_sql_text(sql_handle)) AS query_text

FROM sys.dm_exec_query_stats

ORDER BY avg_cpu_cost DESC

稍做修改,找出运行最频繁的查询:

SELECT TOP 100 total_worker_time/execution_countASavg_cpu_cost, plan_handle, execution_count,

(SELECT SUBSTRING(text,statement_start_offset/2+1,

(CASE WHEN statement_end_offset = -1 THEN LEN(CONVERT(nvarchar(max), text)) * 2

ELSE statement_end_offset END - statement_end_offset)/2)

FROM sys.dm_exec_sql_text(sql_handle)) AS query_text

FROM sys.dm_exec_query_stats

ORDER BY execution_count DESC

可以使用下列系统监视性能计数器查看编译和重编译的速度:

1. SQLServer: SQL Statistics: BatchRequests/Sec(每秒批处理请求数)

2. SQLServer: SQL Statistics: SQLCompilations/Sec(每秒SQL编译次数)

3. SQLServer: SQL Statistics: SQLRecompilations/Sec(每秒SQL重编译次数)

还可以通过下面语句得到SQLServer在优化查询计划上花费的时间:

SELECT * FROM sys.dm_exec_query_optimizer_info

WHERE counter='optimizations' OR counter = 'elapsed time'

下面查询找到被编译得最多的前10位查询计划:

SELECT TOP 10 plan_generation_num, execution_count,

(SELECT SUBSTRING(text, statement_start_offset/2+1,

(CASE WHEN statement_end_offset = -1 THEN LEN(CONVERT(nvarchar(max), text)) * 2

ELSE statement_end_offsetEND-statement_end_offset)/2)

FROM sys.dm_exec_sql_text(sql_handle))ASquery_text

FROM sys.dm_exec_query_stats

WHERE plan_generation_num> 1

ORDER BY plan_generation_num DESC

 

二、sql 数据库内存瓶颈

内存有压力时,一个查询计划可能得移出内存。如果这个计划被再次提交执行,就必须再优化一次,而由于查询优化是CPU密集型运算,这就会给CPU带来压力。同样,内存有压力时,数据库页面可能需要被移出缓冲区池。如果这些页面很快就再次被选中,就会导致更多的物理IO。

通常所说的内存指的是服务器上的可用物理内存(既RAM)。还有另外一种内存叫做虚拟地址空间(VAS)或虚拟内存。在Windows系统上,所有位应用程序都有一个GB的进程地址空间,用来获取最大GB的物理内存。在GB的可用内存之外,进程还可以在用户模式下得到GB的VAS,另外GB保留只能通过内核模式获取。要想更改这个配置,可以在boot.ini文件中使用/3GB switch。

常见的操作系统机制是页面调试,它使用一个交换文件来存储最近未使用的部分进程内存。当这一内存被再次引用时,它就直接从交换文件中读取(或调入)物理内存。

 

可以通过性能计数器,监测下面参数:

1. 内存:可用字节(Available Bytes)

2. SQL Server:缓冲管理器:缓存命中率(Buffer Cache Hit Ratio)指的是那些不用通过磁盘读取而直接在缓冲区池中找到的页的比例。对于大多数产品工作负荷而言,这个值应该是多。(应该是越大越好)

3. SQL Server:缓冲管理器:页平均寿命(Page Life Expectancy)指的是一个没有被引用的页在缓冲区池中保留的秒数。如果数值较低,则说明缓冲区池遇到了内存不足的情况。

4. SQL Server:缓冲管理器:检查点页/秒(Checkpoint Pages/Sec)指的是被检查点刷新的页数,或者要求所有脏页被刷新的其它操作的数目。它能显示工作负荷中增加的缓冲区池活动量。

5. SQL Server:缓冲管理器:延迟写入/秒(Lazywrites/Sec)指的是缓冲管理器的延迟写入器写入的缓冲数目,它的作用类似于前面提到的检查点页/秒。

 

怀疑内存不足时:

方法1:

【监控指标】:Memory Available MBytes ,Memory的Pages/sec, page read/sec, Page Faults/sec

【参考值】:

如果 Page Reads/Sec 比率持续保持为 5,表示可能内存不足。

Page/sec 推荐00-20(如果服务器没有足够的内存处理其工作负荷,此数值将一直很高。如果大于80,表示有问题)。

方法2:根据Physical Disk 值分析性能瓶颈

【监控指标】:Memory Available MBytes ,Pages read/sec,%Disk Time 和 Avg.Disk Queue Length

【参考值】:%Disk Time建议阈值90%

当内存不足时,有点进程会转移到硬盘上去运行,造成性能急剧下降,而且一个缺少内存的系统常常表现出很高的CPU利用率,因为它需要不断的扫描内存,将内存中的页面移到硬盘上。

怀疑内存泄漏时

【监控指标】:Memory Available MBytes ,ProcessPrivate Bytes和ProcessWorking Set,PhysicalDisk/%Disk Time

【说明】:

资源监控中,如果ProcessPrivate Bytes计数器和ProcessWorking Set计数器的值在长时间内持续升高,同时MemoryAvailable bytes计数器的值持续降低,则很可能存在内存泄漏。内存泄漏应该通过一个长时间的,用来研究分析当所有内存都耗尽时,应用程序反应情况的测试来检验。

 

 

 

CPU瓶颈问题

1、System\%Total processor time如果该值持续超过90%,且伴随处理器阻塞,则说明整个系统面临着处理器方面的瓶颈.

注:在某些多CPU系统中,该数据虽然本身并不大,但CPU之间的负载状况极不均衡,此时也应该视作系统产生了处理器方面的瓶颈.

2、排除内存因素,如果Processor %Processor Time计数器的值比较大,而同时网卡和硬盘的值比较低,那么可以确定CPU 瓶颈。(内存不足时,有点进程会转移到硬盘上去运行,造成性能急剧下降,而且一个缺少内存的系统常常表现出很高的CPU利用率,因为它需要不断的扫描内存,将内存中的页面移到硬盘上。)

造成高CPU使用率的原因:

频繁执行程序,复杂运算操作,消耗CPU严重

数据库查询语句复杂,大量的 where 子句,order by, group by 排序等,CPU容易出现瓶颈

内存不足,IO磁盘问题使得CPU的开销增加

 

CPU分析

【监控指标】:

System %Processor Time CPU,Processor %Processor Time CPU

Processor%user time 和Processor%Privileged Time

systemProcessor Queue Length

Context Switches/sec 和%Privileged Time

【参考值】:

System\%Total processor time不持续超过90%,如果服务器专用于 Server,可接受的最大上限是80-85% ,合理使用的范围在60%至70%。

Processor %Processor Time小于75%

systemProcessor Queue Length值,小于CPU数量的总数+1

磁盘I/O分析

【监控指标】:PhysicalDisk/%Disk time,PhysicalDisk/%Idle Time,Physical Disk Avg.Disk Queue Length, Disk sec/Transfer

【参考值】:%Disk Time建议阈值90%

Windows资源监控中,如果% Disk Time和Avg.Disk Queue Length的值很高,而Page Reads/sec页面读取操作速率很低,则可能存在磁盘瓶径。

Processor%Privileged Time该参数值一直很高,且如果在 Physical Disk 计数器中,只有%Disk time 比较大,其他值都比较适中,硬盘可能会是瓶颈。若几个值都比较大,那么硬盘不是瓶颈。若数值持续超过80%,则可能是内存泄露。如果 Physical Disk 计数器的值很高时该计数器的值(Processor%Privileged Time)也一直很高,则考虑使用速度更快或效率更高的磁盘子系统。

Disk sec/Transfer 一般来说,该数值小于15ms为最好,介于15-30ms之间为良好,30-60ms之间为可以接受,超过60ms则需要考虑更换硬盘或是硬盘的RAID方式了.

Average Transaciton Response Time(事务平均响应时间)随着测试时间的变化,系统处理事务的速度开始逐渐变慢,这说明应用系统随着投产时间的变化,整体性能将会有下降的趋势

Transactions per Second(每秒通过事务数/TPS)当压力加大时,点击率/TPS曲线如果变化缓慢或者有平坦的趋势,很有可能是服务器开始出现瓶颈

Hits per Second(每秒点击次数)通过对查看“每秒点击次数”,可以判断系统是否稳定。系统点击率下降通常表明服务器的响应速度在变慢,需进一步分析,发现系统瓶颈所在。

Throughput(吞吐率)可以依据服务器的吞吐量来评估虚拟用户产生的负载量,以及看出服务器在流量方面的处理能力以及是否存在瓶颈。

Connections(连接数)当连接数到达稳定状态而事务响应时间迅速增大时,添加连接可以使性能得到极大提高(事务响应时间将降低)

Time to First Buffer Breakdown(Over Time)(第一次缓冲时间细分(随时间变化))可以使用该图确定场景或会话步骤运行期间服务器或网络出现问题的时间。

碰到过的性能问题:

  • 1. 在高并发的情况下,产生的处理失败(比如:数据库连接池过低,服务器连接数超过上限,数据库锁控制考虑不足等)

  • 2. 内存泄露(比如:在长时间运行下,内存没有正常释放,发生宕机等)

  • 3. CPU使用偏离(比如:高并发导致CPU使用率过高)

  • 4. 日志打印过多,服务器无硬盘空间

如何定位这些性能问题:

1. 查看系统日志,日志是定位问题的不二法宝,如果日志记录的全面,很容易通过日志发现问题。

比如,系统宕机时,系统日志打印了某方法执行时抛出out of memory的错误,我们就可以顺藤摸瓜,很快定位到导致内存溢出的问题在哪里。

2. 利用性能监控工具,比如:JAVA开发B/S结构的项目,可以通过JDK自带的Jconsole,或者JProfiler,来监控服务器性能,Jconsole可以远程监控服务器的CPU,内存,线程等状态,并绘制变化曲线图。

利用Spotlight可以监控数据库使用情况。

我们需要关注的性能点有:CPU负载,内存使用率,网络I/O等

3. 工具和日志只是手段,除此之外,还需要设计合理的性能测试场景

具体场景有:性能测试,负载测试,压力测试,稳定性测试,浪涌测试等

好的测试场景,能更加快速的发现瓶颈,定位瓶颈

4. 了解系统参数配置,可以进行后期的性能调优

除此以外,还想说个题外话,就是关于性能测试工具的使用问题

在刚开始用Loadrunner和JMeter的时候,做高并发测试时,都出现过没有把服务器压垮,这两个程序自己先倒下的情况。

如果遇到这个问题,可以通过远程调用多个客户端的服务,分散性能测试工具客户端的压力来解决。

说这个的目的是想说,做性能测试的时候,我们一定要确保瓶颈不要发生在我们自己的测试脚本和测试工具上

<!-- 正文结束 -->


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/638520/viewspace-1117845/,如需转载,请注明出处,否则将追究法律责任。

1

0


以下为Google Chrome 默认非安全端口列表:

访问会直接被拦截


1, // tcpmux

7, // echo

9, // discard

11, // systat

13, // daytime

15, // netstat

17, // qotd

19, // chargen

20, // ftp data

21, // ftp access

22, // ssh

23, // telnet

25, // smtp

37, // time

42, // name

43, // nicname

53, // domain

77, // priv-rjs

79, // finger

87, // ttylink

95, // supdup

101, // hostriame

102, // iso-tsap

103, // gppitnp

104, // acr-nema

109, // pop2

110, // pop3

111, // sunrpc

113, // auth

115, // sftp

117, // uucp-path

119, // nntp

123, // NTP

135, // loc-srv /epmap

139, // netbios

143, // imap2

179, // BGP

389, // ldap

465, // smtp+ssl

512, // print / exec

513, // login

514, // shell

515, // printer

526, // tempo

530, // courier

531, // chat

532, // netnews

540, // uucp

556, // remotefs

563, // nntp+ssl

587, // stmp?

601, // ??

636, // ldap+ssl

993, // ldap+ssl

995, // pop3+ssl

2049, // nfs

3659, // apple-sasl / PasswordServer

4045, // lockd

6000, // X11

6665, // Alternate IRC [Apple addition]

6666, // Alternate IRC [Apple addition]

6667, // Standard IRC [Apple addition]

6668, // Alternate IRC [Apple addition]

6669, // Alternate IRC [Apple addition]

————————————————

版权声明:本文为CSDN博主「李昊轩的博客」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/qq_33709508/article/details/108826606


IT之家1月31日消息 据外媒 ZDNet 今日消息,谷歌工程师近日宣布,为 Chrome 浏览器再次屏蔽了 8 个 TCP 端口,来防止黑客利用 NAT Slipstreaming 2.0 漏洞进行攻击。这 8 个端口为 69、137、161、1719、1720、1723、6566、10080。

由于目前 IPv4 地址有限,因此路由器会使用 NAT 网络地址转换协议来访问公共互联网。这个功能可以允许路由器跟踪内网设备的请求,并将这些请求以路由器的公网 IP 地址发送出去。当远程计算机响应时,中转协议也将会把数据回传至内网对应设备。

IT之家获悉,NAT Slipstreaming 漏洞于 2020 年 10 月 31 日由网络安全工程师 Samy Kamkar 发现。攻击者利用恶意网站诱导用户进行点击,JavaScript 代码将绕过防火墙和 NAT 表来提供的防御措施,与目标设备直接进行连接。此后黑客便可以利用后续方法发起攻击。

在这个漏洞首次被发现时,谷歌就表示会阻止 HTTP、HTTPS 访问 5060、5061 这两个 TCP 端口。谷歌在说明中表示,“为了防止进一步的攻击,此更改还会阻止其它几个会被 NAT 漏洞利用的端口,以防止这些端口被类似方法进行利用。”

不仅 Chrome 浏览器屏蔽了这些 TCP 端口,火狐、Edge 最新版本浏览器也进行了针对该漏洞的修补。


1. 下载JeecgBoot全套源码

下载地址:https://github.com/zhangdaiscott。

将源码解压到本地目录,我的本地目录是:E:\Jeecg。




2. 基本环境搭建

安装JDK,Maven,Redis,Mysql,Node.js,npm,yarn,Lombok Plugin,JRebel,Babel,Vue.js Plugin。


3. 搭建Jeecg-Boot

用IDEA打开E:\Jeecg\jeecg-boot-master\jeecg-boot,在MySQL中(用户名:root,密码:root)执行E:\Jeecg\jeecg-boot-master\jeecg-boot\db\jeecgboot-mysql-5.7.sql脚本,新建数据库jeecg-boot,启动Redis,Ctrl+Alt+F10启动项目,swagger接口地址:http://localhost:8080。




4. 搭建Ant-Design-Vue-Jeecg

用WebStorm打开E:\Jeecg\jeecg-boot-master\ant-design-vue-jeecg,npm install安装依赖,npm run serve启动PC前端项目,浏览器访问地址:http://localhost:3000。





5. 搭建Jeecg-Uniapp

用WebStorm打开E:\Jeecg\jeecg-uniapp-master,先启动E:\Jeecg\jeecg-boot-master\jeecg-boot\下的jeecg-boot项目,本地访问地址:http://localhost:8080/jeecg-boot/。


>> npm init

>> npm install

1

2

报错如下:




报错原因:需要指定npm仓库是私有还是有远程npm托管库,有两种解决方案

(1)将项目设置为私有,在package.json中添加:


"private": true,

1

(2)将项目的仓库地址在package.json中添加:


"repository": {

    "type": "git",

    "url": "http://baidu.com"

}

1

2

3

4

这还需要结合Uni-app官网的搭建方式来看。


6. 搭建Jeewx-Boot

用IDEA打开Jeewx-Boot(免费微信管家平台),本机地址:E:\Jeecg\jeewx-boot-master,在MySQL中执行E:\Jeecg\jeewx-boot-master\db\目录下的schema_mysql5.7.sql和jeewx-boot-mysql5.7.sql脚本,新建数据库jeewx-boot-os,Ctrl+Alt+F10启动项目,浏览器访问http://localhost:80,进入捷微微信管家平台。





7. 搭建Jeecg(旧版本SpringMVC)

用IDEA打开E:\Jeecg\jeecg-master,在MySQL数据库中执行脚本:E:\Jeecg\jeecg-master\docs\jeecg_4.0_mysql.sql,Ctrl+Alt+F10启动项目。这是SpringMVC的项目,后续还需要好好看。


8. 搭建Autopoi

用IDEA打开E:\Jeecg\autopoi-master,这是Word和Excel的导入导出模块。


9. 使用积木报表

浏览器打开http://jimureport.com/login,注册后登录,免费使用积木报表功能。





————————————————

版权声明:本文为CSDN博主「魏晓蕾」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/gongxifacai_believe/article/details/109176618



【 准备工作 】


  • 一、前端准备工作

    1.到官网下载最新版本的Node.js,官网下载地址:https://nodejs.org/en/download/

    选择这个版本下载即可


    2.下载好后双击msi文件,进行安装(注:Node.js自带了npm)。下面来验证是否安装成功。
    cmd下,输入:

    node -v
    npm -v

    输出版本信息则表示安装成功

    1.修改npm的缓存目录和全局目录路径(注:"E:\Node\node-v10.16.1"为你的Node.js的安装目录)
    cmd下,输入:

    npm config set prefix "E:\Node\node-v10.16.1\node_global"
    npm config set prefix "E:\Node\node-v10.16.1\node_cache"

    执行完后可看到该目录下多了两个文件夹


    2.配置npm和Node.js的环境变量
    第一步:修改用户变量下的Path变量,将"C:\Users\yusha\AppData\Roaming\npm"更换为"E:\Node\node-v10.16.1\node_global"




    第二步:在系统变量下增加一个变量,变量名为NODE_PATH,值为"E:\Node\node-v10.16.1\node_global\node_modules"


    1.cmd下,输入:

    npm install -g yarn

    安装成功后即可查看版本:

    yarn -v

    下载WebStorm并激活

    • WebStorm

    • yarn

    • npm

    • Node.js


    • 二、后端准备工作

      下载1.8版本的JDK并配置环境变量

      1.下载最新版本的Maven并配置环境变量
      2.修改Maven本地仓库地址,并配置远程仓库
      修改conf目录下的setting.xml文件


      <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"><localRepository>E:\Apache\Maven\repository</localRepository>
          <mirrors>
                <mirror>
                    <id>nexus-aliyun</id>
                    <mirrorOf>*,!jeecg,!jeecg-snapshots</mirrorOf>
                    <name>Nexus aliyun</name>
                    <url>http://maven.aliyun.com/nexus/content/groups/public</url>
                </mirror> 
           </mirrors></settings>

      1.下载IDEA并激活
      2.IDEA配置JDK
      点击Configure->Structure for New Projects


      • IDEA

      • Maven

      • JDK

    配置JDK


    3.IDEA配置Maven
    点击Configure->Settings


    配置Maven


    4.安装插件Lombok
    点击Configure->Plugins



    • 三、数据库准备工作(MySql版)

      1.安装MySql,初始化并修改密码
      2.安装Navicat Premium或其他数据库管理工具、连接Mysql
      3.新建数据库,数据库名为jeecg-boot

      1.根据实际情况选择下载Redis,下载地址:https://github.com/microsoftarchive/redis/releases

      下载好后解压即可


      2.建议下载Redis可视化工具:RedisDeskTopManager
      3.开启Redis
      进入Redis安装目录,在目录栏输入cmd并回车
      在cmd输入以下命令:


      redis-server.exe redis.windows.conf

      Redis开启成功

      • Redis

      • MySql


    【 项目启动 】


    • 一、前端项目启动

      1.从Github上下载项目,项目地址:https://github.com/zhangdaiscott/jeecg-boot
      2.用WebStorm导入项目ant-design-vue-jeecg

      导入项目


      1.调出WebStorm的Terminal,使用命令yarn install 下载项目依赖
      2.启动项目
      找到项目目录下文件package.json文件,鼠标右键选择Show npm Scripts



      点击命令:serve ,即可启动项目


      • 启动项目

      • 加载项目


    • 二、后端项目启动

      1.执行sql语句初始化数据库
      sql文件地址:jeecg-boot/db/jeecg-boot-mysql-20190705.sql

      1.点击Open,双击jeecg-boot下的pom.xml文件即可导入Maven项目



      2.配置文件地址为:/jeecg-boot-module-system/src/main/resources/application-dev.yml
      MySql数据库及Redis配置:

      spring:datasource:
        dynamic: 
          datasource: 
              #主数据源
              master: 
                url: jdbc:mysql://127.0.0.1:3306/jeecg-boot?characterEncoding=UTF-8&useUnicode=true&useSSL=false
                username: root
                password: root
                driver-class-name: com.mysql.jdbc.Driverredis:
        database: 0
        host: 127.0.0.1
        lettuce:
          pool:
            max-active: 8   #最大连接数据库连接数,设 0 为没有限制
            max-idle: 8     #最大等待连接中的数量,设 0 为没有限制
            max-wait: -1ms  #最大建立连接等待时间。如果超过此时间将接到异常。设为-1表示无限制。
            min-idle: 0     #最小等待连接中的数量,设 0 为没有限制
          shutdown-timeout: 100ms
        password: ''
        port: 6379

      1.找到类/src/main/java/org/jeecg/JeecgApplication.java,右键执行

      • 启动项目

      • 加载项目并修改配置文件

      • 初始化数据库


    2人点赞

    Jeecg-boot



    作者:Les_Primavera
    链接:https://www.jianshu.com/p/679cdfe8daed
    来源:简书
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。