Derby设置密码教程
方法一: 配置derby.propertites文件:
文件内容:
derby.connection.requireAuthentication=true
derby.authentication.provider=BUILTIN
derby.user.username=password
将username和password改成你所需要的。我先设username为sa(这里会有问题,后面会讲),密码为password
把这个文件放到你的数据库所在的目录下。
然后打开cmd,进入数据库所在目录,运行ij工具,如果你不输入用户名和密码,只是输入如下语句:
Connect ‘jdbc:derby:testDataType;create=true’;
ij会提示你’ connection authentication failure occurred. Reason: Invalid authentication..’
所以,要运行以下语句:
Connect ‘jdbc:derby:testDataType;create=true;user=sa;password=password’;
接下来,如果你要对数据库进行操作,可能会出问题,试试select些数据,oops!

名为‘sa’的数据库模式不存在。因为,derby在用户登录之后,会默认使用与用户名相同的模式,如果该模式不存在,就会报错。有两种方法解决这个问题:
第一, 看下你的数据库存在的模式是什么名称?我的是app,那么创建一个名为app的用户,登录后直接就对app模式数据库进行操作了。

第二, 不改用户名,直接用sa登录,登录之后运行这条语句:set schema app;再进行操作就OK了。无图无真相,看图:

别高兴得太早,让我们跑到另一个路径下执行ij,悲惨的事情即将发生:

看,我现在是在c盘根目录下运行ij,没有用用户名和密码就直接可以查询数据库了。
怎么办呢?
下面讲第二种方法设置derby数据库密码。
方法二: 为某一个数据库设定密码。
前面讲的配置derby.properties文件是为derby数据库配置系统设置。也就是在数据库所在目录下,如果还存在其他数据库,他们也将会用derby.properties设置的用户名和密码来登录。如果在非derby.properties所在目录下运行ij,derby.properties将不再生效,ij将使用derby默认的embed模式的配置,也就是不需要用户名和密码即可查询数据库。
这不是我想要的(为什么要这样设计呢?我百思不得其解,如果是这样,别人只要知道你数据库的路径,然后在其他路径下用ij就可以随便改你的数据库了)。我希望,不管在哪里运行ij,都必须使用我设置好的用户名和密码来查询数据库。
请用ij连到数据库,然后运行以下语句:
CALL SYSCS_UTIL.SYSCS_SET_DATABASE_PROPERTY(‘derby.authentication.provider’,
‘BUILTIN’);
CALL SYSCS_UTIL.SYSCS_SET_DATABASE_PROPERTY(‘derby.connection.requireAuthentication’,
‘true’);
CALL SYSCS_UTIL.SYSCS_SET_DATABASE_PROPERTY(‘derby.user.username’,
‘password’); ————这里username和password改成你的就可以了,下次登录时则要输入这里设置的。
CALL SYSCS_UTIL.SYSCS_SET_DATABASE_PROPERTY(‘derby.database.fullAccessUsers’,
‘username’); ————这个username和前面那个一样
CALL SYSCS_UTIL.SYSCS_SET_DATABASE_PROPERTY(‘derby.database.defaultConnectionMode’,
‘noAccess’);
退出ij,再运行:

这下不输入用户名和密码访问不了了吧。那么输入试试:

大功告成!不管你将数据库放到哪里,也不管你在哪里运行ij,都必须用用户名和密码来查询了。
如果要密码:还是运行上面的语句,把密码改成新的,再次运行数据库的时候就会要求输入新密码。
删密码,也就是改回不用用户名和密码登录:
只运行这一句:
CALL SYSCS_UTIL.SYSCS_SET_DATABASE_PROPERTY(‘derby.connection.requireAuthentication’,
‘false’);
全部操作可在cmd内运用ij工具完成。用这种方法,可以不用derby.propertites文件了。但是必须牢记用户名和密码。
转自:http://www.joyzhong.com/archives/643
Derby设置密码教程的更多相关文章
- Excel表格如何设置密码 Excel2003/2007/2010设置密码教程
http://www.wordlm.com/special/2/ 经常使用Excel表格制作报表和一些数据后,我们会给Excel表格设置密码,这样可以很有效的防止数据被盗取.目前Office版本众多, ...
- 在虚拟机中安装红旗桌面7.0 Linux操作系统的详细图文教程
本文作者:souvc 本文出处:http://www.cnblogs.com/liuhongfeng/p/5343087.html 以下是详细的内容: 一.安装虚拟机. 安装虚拟机可以参考:在Wind ...
- 黄聪:phpexcel中文教程-设置表格字体颜色背景样式、数据格式、对齐方式、添加图片、批注、文字块、合并拆分单元格、单元格密码保护
首先到phpexcel官网上下载最新的phpexcel类,下周解压缩一个classes文件夹,里面包含了PHPExcel.php和PHPExcel的文件夹,这个类文件和文件夹是我们需要的,把class ...
- Github.com的Git和TortoiseGit图文教程
图文介绍Windows系统下使用 Github账户 + msysgit + TortoiseGit 进行文件管理的方法. 安装 安装mysysgit 下载地址:msysgit 安装过程: 0.启动 1 ...
- Smokeping安装教程
Smokeping安装教程 #Smokeping2.6.8安装教程 #2016.3.6 改编v1.0 #Linux运维技术交流 347163978 环境 CentOS release 6.4 (F ...
- 转载:Hadoop安装教程_单机/伪分布式配置_Hadoop2.6.0/Ubuntu14.04
原文 http://www.powerxing.com/install-hadoop/ 当开始着手实践 Hadoop 时,安装 Hadoop 往往会成为新手的一道门槛.尽管安装其实很简单,书上有写到, ...
- Mac下搭建php开发环境教程
方案一:原生安装 这篇文章主要介绍了Mac下搭建php开发环境教程,Mac OS X 内置了Apache 和 PHP,这样使用起来非常方便.本文以Mac OS X 10.6.3为例,需要的朋友可以参考 ...
- 转:小白编译openwrt固件教程
原文地址 编译openwrt固件并没有想象的那么复杂,我也是个小白,以下内容是我将网络上的编译教程稍微进行了一下整合.因为我发现很多编译教程没有说明如何更改flash相关配置. 安装ubuntu, ...
- MySQL5.7 Replication主从复制配置教程
最近配置mysql5.7主从复制的时候碰到了些问题,老老实实按老版本的步骤配置会有错误,后来自己查看了官方文档,才解决了问题,在这里总结一下5.7的配置步骤, 大体步骤跟老版本的还是一样的,只是有一些 ...
随机推荐
- 微信接口问题(The underlying connection was closed: An unexpected error occurred on a send)
突然在调用微信接口是报:The underlying connection was closed: An unexpected error occurred on a send错误,跟踪了半天,是因为 ...
- python 字符串截断
>>> s = '%20and%201=2%20union%20select%201,group_concat%28table_name%29,3,4,5,6,7,8,9,10,11 ...
- spring调用方法(接口和多个实现类的情况)
以spring框架注入bean说明接口TestService 有2个实现类 TestServiceImp1 @Service("TestService1") ,TestServic ...
- (转)看懂UML类图
转自:http://design-patterns.readthedocs.io/zh_CN/latest/read_uml.html 这里不会将UML的各种元素都提到,我只想讲讲类图中各个类之间的关 ...
- 洛谷——P1747 好奇怪的游戏
P1747 好奇怪的游戏 题目背景 <爱与愁的故事第三弹·shopping>娱乐章. 调调口味来道水题. 题目描述 爱与愁大神坐在公交车上无聊,于是玩起了手机.一款奇怪的游戏进入了爱与愁大 ...
- odoo打包下载
view 视图中下载按钮的编辑 <record id="action_download_zip" model="ir.actions.server"> ...
- iOS 9应用开发教程之编辑界面与编写代码
iOS 9应用开发教程之编辑界面与编写代码 编辑界面 在1.2.2小节中提到过编辑界面(Interface builder),编辑界面是用来设计用户界面的,单击打开Main.storyboard文件就 ...
- 深入理解ajax系列第二篇
前面的话 在上一篇中,概要地介绍了XHR对象的使用.本文将详细介绍使用XHR对象发送请求的两种方式——GET和POST.下面将以实例的形式来详细说明 GET GET是最常见的请求类型,最常用于向服务器 ...
- es6新增功能
声明命令 1. let命令 ES6新增了let命令,用来声明变量.它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效.下面代码在代码块之中,分别用let和var声明了两个变量.然 ...
- POI2018
[BZOJ5099][POI2018]Pionek(极角排序+two pointers) 几个不会严谨证明的结论: 1.将所有向量按极角排序,则答案集合一定是连续的一段. 当答案方向确定时,则一个向量 ...