我们有一个遗留应用程序,我们可以完全访问源代码和运行它的平台,因此如果需要,几乎可以实施任何更改。
该应用程序是一个 Java Swing 重量级 GUI(桌面),通过 JDBC 以 2 层方式直接访问数据库。在应用程序启动时,用户输入由用户和密码组成的他/她的凭据。当前的安全架构是:
这个想法是用 Microsoft Active Directory 替换 OID,因此数据库将根据 AD 验证用户。ER 中定义的 DB 权限也可以根据用户所属的组从 AD 中检索。
假设 Oracle …
请推荐一个工具来将 PostgreSQL 数据库逆向工程为实体关系图 (ERD) 或等效的 ??
理想情况下,我正在寻找一种易于使用的格式(SVG、PDF 或任何常见的 UML 文件格式)的简单 ERD 或 UML 类图。
到目前为止,我只为 MySQL 和 Windows 创建了软件,但这不是解决方案。
即使我们使用启用了屏障的日志文件系统 (EXT3) ,这仍然更安全和推荐吗?
例如
mount -o barrier=1 /dev/sda /mntpnt
Run Code Online (Sandbox Code Playgroud)
参考:
根据此站点 ( http://www.dbspecialists.com/oracle11glinux.html),Oracle仅在以下 Linux 发行版上受支持:
是否有任何技术原因导致 Oracle 在基于 Debian 的安装 (Ubuntu) 上表现不佳?或者这更多是为了从企业支持的角度与 Oracle 打交道?
我有一个使用 WIN1252 编码的 pg_dump 创建的 dmp 文件。我想做的是使用 pg_restore 将它导入到 Linux 机器上的数据库中。问题是在 Windows 机器上 postgreSQL 识别编码 WIN1252 但不识别 CP1252 编码(它们都是相同的,只是相同标准的不同名称)。在 Linux 机器上,postgreSQL 能识别 CP1252 但不能识别 WIN1252。因此,当我尝试执行 pg_restore 时,出现错误,因为 WIN1252 未被识别为正确的编码。此外,如果我尝试在 Windows 上执行 pg_dump 并将编码指定为 CP1252,则会出现类似的错误。我想坚持使用这种编码格式,因此在 utf8 中执行 pg_dump 或其他事情不是我想做的事情。任何帮助,将不胜感激!
编辑:实际上,经过进一步调查,postgreSQL 不理解 cp1252。用于将文本文件从一种编码转换为另一种编码的 iconv linux 命令理解 cp1252 而不是 win1252,这就是我从哪里得到它的。在Linux机器上,我仍然无法将客户端编码设置为WIN1252。这是错误消息:
FATAL: conversion between WIN1252 and LATIN1 is not supported
Run Code Online (Sandbox Code Playgroud)
变量 client_encoding 在 Linux 机器上最初设置为 UTF8,所以我不知道 LATIN1 来自哪里。除非不支持 WIN1252,否则 postgres 会尝试将其转换为 latin1,因为这是最接近它的东西,并且由于某些字符不匹配而无法实现?
当我尝试将远程服务器连接为-
sqlplus SYSTEM/oracle@192.168.0.171:1521/kannel
Run Code Online (Sandbox Code Playgroud)
它向我展示了这个错误-
SQL*Plus: Release 11.2.0.2.0 Production on Fri Nov 15 15:36:52 2013
copyright (c) 1982, 2010, Oracle. All rights reserved.
ERROR:
ORA-12541: TNS:no listener
Run Code Online (Sandbox Code Playgroud)
我检查了我的监听器,它正在运行
[root@roracle bin]# ./lsnrctl status
LSNRCTL for Linux: Version 11.2.0.3.0 - Production on 15-NOV-2013 15:42:24
Copyright (c) 1991, 2011, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
Linux Error: 111: Connection refused
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener …Run Code Online (Sandbox Code Playgroud) 使用触发器时,如果对表进行了更新,则执行触发器。这是非常方便的。但是,我需要的是执行外部脚本。
是否可以配置 MySQL,以便在触发/更改表中的值时执行外部进程/脚本?
我一直遇到与 mysql 相同的问题,错误代码为 28,这意味着设备上没有足够的空间。
现在奇怪的部分是有足够的空间,这里有一些我在谷歌上找到的提示,以确定我是否有足够的空间。(请记住,我是 linux 系统的新手)
du -sh /var/log/mysql
36K /var/log/mysql
df -h
Filesystem Size Used Avail Use% Mounted on
udev 1.5G 4.0K 1.5G 1% /dev
tmpfs 604M 224K 604M 1% /run
/dev/disk/by-uuid/7a06472d-4cc9-4383-93b0-4ecee9b21c04
24G 15G 8.4G 64% /
none 5.0M 0 5.0M 0% /run/lock
none 1.5G 0 1.5G 0% /run/shm
/dev/vda1 461M 36M 402M 9% /boot
Run Code Online (Sandbox Code Playgroud)
我一直试图解决这个问题很长时间了,但没有任何帮助,任何建议都会有所帮助。
编辑
最奇怪的部分是,如果我删除 200-800mb 的大文件,此错误会在很短的时间内消失,然后再次返回。我实际上已经删除了大约 10GB 的文件,希望能解决这个问题,但它没有帮助。

我有 2 个完全相同的服务器,具有精确的磁盘分区(OS CENTOS 6.4 两者)[我的大学中央 Oracle 服务器]。
整个 ORACLE HOME(bin、控制文件、数据文件,oracle 上的所有内容)都在第二个磁盘(不是操作系统磁盘)上
由于旧服务器已达到使用寿命(来自惠普),一台带有升级 RAM 的新惠普机器(旧系统有 16 GIG,而新系统为 64 GIG)。
现在因为所有的 oracle 依赖项(RPM、库、环境变量、JAVA、用户和组)已经在新服务器上创建。
所以现在问题是..
我可以从旧服务器中删除磁盘 [Oracle HDD] 并将其插入新服务器,然后启动 Oracle (sqlplus "/ as sysdba" 或 dbstart 和 lnsctrl)。
它能带来任何挑战。(我也有冷备份、导出备份和 RMAN 备份)。
我只是想尝试一下上面的案例。
这行得通吗??
免责声明:我很清楚这是不应该做的,但桌子之间的时间一致性在这里不是一场音乐会,我现在正在尝试任何我脑海中突然出现的东西,以提供准时、按需备份的替代方案,以补充更多健壮的,预定的。
我几乎想知道在复制 MyISAM 表文件(.frm、.MYD、MYI)并获取事务时是否会出现任何读取问题。
大多数桌子都很小,所以我们可以冒险,但有几张桌子因为它们的大小而让我担心。我不介意等待交易完成,让我担心的是读取错误并且无法从查询中获得响应
就是这样,如果你知道什么请告诉我