51Testing软件测试论坛

标题: Linux下Jira+Mysql 安装 经验谈 [打印本页]

作者: NODDY820    时间: 2007-7-18 02:46
标题: Linux下Jira+Mysql 安装 经验谈
我刚开始对Jira配置Mysql老不成功sdlkfj7,经过多次检查后发现问题所在:

Mysql里用户Jirauser没有分配到对数据库Jiradb的操作权限。(明明指派了权限"grant all privileges ..... grant option;",但在Mysql Administrator 工具里"Assigned Privileges"栏却为空,没有任何权限。)

现总结了一些需要注意的地方,希望对遇到类似问题的朋友有用。

1.JDK和JIRA的安装一般不会有问题,安装好后建议修改连接端口,修改如下:

修改server.xml (路径:/opt/jira/conf/server.xml)

第1行:
<Server port="8015" shutdown="SHUTDOWN">
<Service name="Catalina">
<Connector port="8090"

51testing
2.配置使用MySQL数据库

以管理员帐号登入mysql:
MySQL --user=root MySQL

创建数据库:
create database jiradb character set 'UTF8';

创建用户:
create user jirauser identified by 'jira';
grant all privileges on jiradb.* to 'jirauser'@'%' identified by 'jira' with grant option;
grant all privileges on jiradb.* to 'jirauser'@'localhost' identified by 'jira' with grant option;

如果用下面的语句,’jirauser‘并不会获得任何权限,我已试过多次了:
grant all privileges on *.* to 'jirauser'@'%' identified by 'jira' with grant option;
grant all privileges on *.* to 'jirauser'@'localhost' identified by 'jira' with grant option;

可以到MS-Windows下用Mysql Administrator 工具检查一下jirauser对数据库jiradb的权限。"Assigned Privileges"栏为当前拥有的权限,如果此栏为空,要将"Avialable Privileges'里的权限项添加到"Assigned Privileges"栏里。

3.安装连接驱动包 Mysql JDBC Driver

cp   mysql-connector-java-3.1.12-bin.jar   /opt/jira/common/lib/

注意:是mysql-connector-java-3.1.12-bin.jar。不要误将mysql-connector-java-3.1.12.tar直接就拷过去了。

51teating

4.修改两个JIRA的配置文件

1)修改server.xml (路径:/opt/jira/conf/server.xml)

第13行:
username="jirauser"
password="jira"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost/jiradb?autoReconnect=true&useUnicode=true&characterEncoding=UTF8"
(删除minEvictableIdleTimeMillis and timeBetweenEvictionRunsMillis项 )
maxActive="20" />

注:以上“localhost”可不该,也可改为主机名或设为"主机IP:端口",mysql端口号为"3306"。

b)修改entityengine.xml (路径:/opt/jira/atlassian-jira/WEB-INF/classes/entityengine.xml)

第100行修改为:
<datasource name="defaultDS" field-type-name="mysql"
删除schema-name="UBLIC"

以上要修改的部分修改后要仔细检查,不要因为少一个"."或拼写错误而使配置失败。

5.启动JIRA服务:
/opt/jira/bin/startup.sh   
(启动服务大约要20秒,不要急于测试,硬盘灯灭了才表示服务加载完成。)

测试
Http://"host_ip":8090/

如果没有成功需要检查调试,先关闭服务:
/opt/jira/bin/shutdown.sh

检查修改后再重新启动服务。

sdlkfj6
遇到问题,我也习惯用google找解决办法,但也不一定能找到相应的解决办法,毕竟软件方面的问题比较复杂,每个人所遇到问题的原因各有不同,遇到问题时还是要自己多想想。

[ 本帖最后由 NODDY820 于 2007-7-19 11:06 编辑 ]
作者: 闭合叶子    时间: 2007-7-21 18:36
多谢楼主与大家分享,顶一下~~~
作者: tidy_wwwww    时间: 2007-7-22 21:17
grant all privileges on *.* to 'jirauser'@'%' identified by 'jira' with grant option;
grant all privileges on *.* to 'jirauser'@'localhost' identified by 'jira' with grant option;
通常在这里,大家好像都习惯性的使用*.*了,却忘了SHELL和DOS还是有区别的,所以,谢谢LZ的提醒!谨记谨记~~
作者: thedaythegirl    时间: 2007-7-23 16:31
标题: 回复 #1 NODDY820 的帖子
lz的学习态度很认真,补充一下:
创建jirauser操作可以不用做(create user jirauser identified by 'jira';)因为下面的赋权语句已经是先创建用户然后赋权;
grant all privileges on jiradb.* to 'jirauser'@'%' identified by 'jira' with grant option;
grant all privileges on jiradb.* to 'jirauser'@'localhost' identified by 'jira' with grant option;
作者: thedaythegirl    时间: 2007-7-23 17:03
标题: mysql的权限
有些同学执行了如下的赋值语句:
mysql>grant all privileges on *.* to 'jirauser'@'%' identified by 'jira' with grant option;
mysql>grant all privileges on *.* to 'jirauser'@'localhost' identified by 'jira' with grant option;
shell#mysqladmin reload
但没有在Mysql Administrator中jiradb对应的Assigned privileges中没有查看到任何权限,可能会感到困惑,这里给大家解释一下:
如果用上面的语句:
他的作用是创建了超级用户,而且给这个用户赋了所有数据库实例的所有对象的操作权限(*.*),并不是没有赋权,他的权限是在mysql数据库实例中的user表中管理的,大家可以使用Mysql Query 工具查看该表,会发现用户jirauser对应的记录所有的权限列值都是Y,说明他是有权限的。

如果使用如下的语句:
mysql>grant all privileges on jiradb.* to 'zhang'@'%' identified by 'jira' with grant option;
mysql>grant all privileges on jiradb.* to 'zhang'@'localhost' identified by 'jira' with grant option;
shell#mysqladmin reload
这样执行将用户zhang的权限限制在数据库实例jiradb上,他不能对别的实例操作;
查看user表,你会发现他所对应的权限列值都是N
zhang的权限在表db中管理,查看db表,你会发现他所对应的权限值都是Y

总结:使用工具mysql administrator 在Assigned privileges中看到的权限是对应表db的数据,而不是user表的。也不能直接否定grant privileges on *.* 这个语句的作用 :)

[ 本帖最后由 thedaythegirl 于 2007-7-23 17:32 编辑 ]
作者: 晓诺    时间: 2007-10-17 15:31
;p
作者: CCTV果冻爽    时间: 2007-12-28 06:02
我不会。
作者: tanbin2002    时间: 2007-12-28 13:59
因为不熟悉,所有来学习




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2