方法一:    配置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设置密码教程的更多相关文章

  1. Excel表格如何设置密码 Excel2003/2007/2010设置密码教程

    http://www.wordlm.com/special/2/ 经常使用Excel表格制作报表和一些数据后,我们会给Excel表格设置密码,这样可以很有效的防止数据被盗取.目前Office版本众多, ...

  2. 在虚拟机中安装红旗桌面7.0 Linux操作系统的详细图文教程

    本文作者:souvc 本文出处:http://www.cnblogs.com/liuhongfeng/p/5343087.html 以下是详细的内容: 一.安装虚拟机. 安装虚拟机可以参考:在Wind ...

  3. 黄聪:phpexcel中文教程-设置表格字体颜色背景样式、数据格式、对齐方式、添加图片、批注、文字块、合并拆分单元格、单元格密码保护

    首先到phpexcel官网上下载最新的phpexcel类,下周解压缩一个classes文件夹,里面包含了PHPExcel.php和PHPExcel的文件夹,这个类文件和文件夹是我们需要的,把class ...

  4. Github.com的Git和TortoiseGit图文教程

    图文介绍Windows系统下使用 Github账户 + msysgit + TortoiseGit 进行文件管理的方法. 安装 安装mysysgit 下载地址:msysgit 安装过程: 0.启动 1 ...

  5. Smokeping安装教程

    Smokeping安装教程 #Smokeping2.6.8安装教程 #2016.3.6 改编v1.0 #Linux运维技术交流 347163978   环境 CentOS release 6.4 (F ...

  6. 转载:Hadoop安装教程_单机/伪分布式配置_Hadoop2.6.0/Ubuntu14.04

    原文 http://www.powerxing.com/install-hadoop/ 当开始着手实践 Hadoop 时,安装 Hadoop 往往会成为新手的一道门槛.尽管安装其实很简单,书上有写到, ...

  7. Mac下搭建php开发环境教程

    方案一:原生安装 这篇文章主要介绍了Mac下搭建php开发环境教程,Mac OS X 内置了Apache 和 PHP,这样使用起来非常方便.本文以Mac OS X 10.6.3为例,需要的朋友可以参考 ...

  8. 转:小白编译openwrt固件教程

    原文地址 编译openwrt固件并没有想象的那么复杂,我也是个小白,以下内容是我将网络上的编译教程稍微进行了一下整合.因为我发现很多编译教程没有说明如何更改flash相关配置.   安装ubuntu, ...

  9. MySQL5.7 Replication主从复制配置教程

    最近配置mysql5.7主从复制的时候碰到了些问题,老老实实按老版本的步骤配置会有错误,后来自己查看了官方文档,才解决了问题,在这里总结一下5.7的配置步骤, 大体步骤跟老版本的还是一样的,只是有一些 ...

随机推荐

  1. day7异常处理

    异常处理 下面看一个简单例子: data = {} try: data["name"] except KeyError as e: #e是错误的相信信息,错误的原因 print(& ...

  2. svn错误 svnserve.conf:12: Option expected解决办法

    经常有新手配置基于svnserve的subversion服务器后,在客户端访问subversion版本库时出现这个错误:svnserve.conf:12: Option expected为什么会出现这 ...

  3. 使用require.js编写模块化JS

    layout: post title: 使用requirejs编写模块化代码 category: javascript date: 2016-10-22 00:00:00 tags: javascri ...

  4. Django实战(9):实现Product的输入校验

    让我们完成上一节中的任务: 1.验证price>0:需要在Form中验证: 2. 验证title唯一:在Model中验证: 3. 验证image_url的扩展名:在Form中验证,还可以顺便在M ...

  5. Dubbo内核实现之SPI简单介绍

    这个部分单独写一页,看起来更高大上一些. 1.概括 Dubbo采用微内核+插件体系,使得设计优雅,扩展性强.那所谓的微内核+插件体系是如何实现的呢! 即我们定义了服务接口标准,让厂商去实现(如果不了解 ...

  6. ArrayList源码中EMPTY_ELEMENTDATA和DEFAULTCAPACITY_EMPTY_ELEMENTDATA的区别

    2018年7月22日09:54:17 JDK 1.8.0_162 ArrayList源码中EMPTY_ELEMENTDATA和DEFAULTCAPACITY_EMPTY_ELEMENTDATA的区别 ...

  7. mysql索引之三:索引使用注意规则(索引失效--存在索引但不使用索引)*

    使用索引时,有以下一些技巧和注意事项: (1)越小的数据类型通常更好:越小的数据类型通常在磁盘.内存和CPU缓存中都需要更少的空间,处理起来更快.(2)简单的数据类型更好:整型数据比起字符,处理开销更 ...

  8. ubuntu18.04 安装Navicat 解决字体方框问题

    前景 最近带着看一点数据库的知识,装一下navicat,就是这个玩意儿,在我编码毫无问题的情况下,这个软件上却显示各种乱码 环境 ubuntu 18.04 navicat 12(最新版) mysql ...

  9. 概率论与数理统计基础<1>:随机事件与随机变量

    Part1. 随机事件 1-1.随机试验 随机试验:可以在相同条件下重复进行,每次试验的结果不止一个,事先知道所有可能的结果但不确定是哪一个的试验. 举例:重复的抛出一枚均匀的硬币就是一个随机试验,事 ...

  10. POJ 2891 Strange Way to Express Integers 中国剩余定理 数论 exgcd

    http://poj.org/problem?id=2891 题意就是孙子算经里那个定理的基础描述不过换了数字和约束条件的个数…… https://blog.csdn.net/HownoneHe/ar ...