终于原创一个,记录了我在redhat下安装EnterpriseDB中解决的问题,备查
1.sudo ./ppasmeta-9.2.1.3-linux-x64.run 提示: command not found
ls -l后发现用户无执行权限
增加执行权限:chmod +x ppasmeta-9.2.1.3-linux-x64.run
2.选择语言后提示:
Error: There has been an error.
Please put SELinux in permissive mode and then run installer again. SELinux can
be put in enforcing mode again after installation.
Press [Enter] to continue :
需要临时关闭SELinux
setenforce 0 ##设置SELinux 成为permissive模式
##setenforce 1 设置SELinux 成为enforcing模式
3.所有的指令,比如pg_ctrl提示:
-bash:pg_ctrl: command not found
这样的指令必须加上路径,即使是在当前目录下,也要用./pg_ctl
可以设置环境变量解决:
export PATH=/opt/PostgresPlus/9.2AS/bin:$PATH
4.pg_ctl等指令提示:
pg_ctl: no database directory specified and environment variable PGDATA unset
需要设置环境变量:
export PGDATA=/opt/PostgresPlus/9.2AS/data
5.完成安装后,远程连接数据库出现问题:执行请求的操作时遇到错误:IO 错误: Got minus one from a read call
网上查的,打算修改一下opt/PostgresPlus/9.2AS/data|pg_hba.conf配置文件,可是当前用户没有权限
打算切换到enterprisedb用户,发现忘了密码了
用passwd指令修改密码,登陆成功
pg_hba.conf文件增加行:host all all trust
用pg_ctl restart重启数据库
另外:
修改服务端data/postgresql.conf文件,将
- #listen_address='localhost'改成
- listen_addresses = '*'
6.restart失败,无法关闭数据库
按提示,增加参数:pg_ctl restart -m fast
7.重启失败,start也失败,提示
2014-10-12 00:06:56 CST 致命错误: 组或其他用户都可以访问数据目录 "/opt/PostgresPlus/9.2AS/data"
2014-10-12 00:06:56 CST 详细信息: 权限应该为 u=rwx (0700).
修改权限:
chmod 0700 data
8.启动报错:
2014-10-12 00:22:33 CST 日志: 已加载的库 "$libdir/dbms_pipe"
2014-10-12 00:22:33 CST 日志: 已加载的库 "$libdir/edb_gen"
2014-10-12 00:22:33 CST 日志: 无法创建 IPv6 套接字: 协议不支持的地址族
开始以为是IPv6的问题,后来根据后面的提示,查看日志:
2014-10-12 01:39:15 CST 日志: 无效认证方法"127.0.0.1/32"
2014-10-12 01:39:15 CST 上下文: 配置文件"/opt/PostgresPlus/9.2AS/data/pg_hba.conf"的第82行
2014-10-12 01:39:15 CST 致命错误: 无法加载pg_hba.conf
是pg_hba.conf的问题,经检查是5中配置错误,将配置改为:
host all all 0.0.0.0/0 md5
启动成功
9.登陆报错:
-bash-4.1$ psql
Password:
psql: 致命错误: 用户 "enterprisedb" Password 认证失败
将
host all all 0.0.0.0/0 md5
改为
host all all 0.0.0.0/0 trust
允许用户名密码认证
本来还想本地用用户名密码登陆,但是把
local all all md5
改为
local all all trust
后,登陆提示:psql: 致命错误: 数据库 "enterprisedb" 不存在
10.接上回,输入psql提示enterprisedb不存在
直接输入psql的话,会默认寻找和当前用户名一致的数据库名,但是没有这个数据库
应该输入:psql template1
成功:
template1=#
进入后:create database enterprisedb
或者不进入数据库,用createdb指令
然后再次psql就能直接进入enterprisedb了
查看现有数据库:
enterprisedb=# select oid,datname from pg_database;
oid | datname
-------+--------------
1 | template1
14077 | template0
14082 | postgres
14083 | edb
16384 | enterprisedb
(5 rows)
11.删除data目录,重新initdb数据库
在data目录下:
rm -rf *
然后
initdb建立新的数据库
12.修改用于enterprisedb密码
这里需要注意,enterprisedb可能是linux的密码,也可能是数据库的密码,这里修改的是数据库的密码
postgres=# ALTER USER enterprisedb with password 'admin';
13.进入数据库后如何退出:
template1=# quit
14.创建和删除用户:
相关推荐
该文档强调了Oracle到EnterpriseDB移植过程中需要注意的关键问题,尤其对于那些希望在不改变现有代码的情况下实现数据库迁移的企业来说极为有用。 #### 二、更新说明 文档的**更新说明**部分详细介绍了不同版本间...
【云数据库厂商及其产品】文中提到了新兴的云数据库厂商,如IVertica、LongJump和EnterpriseDB等,这些厂商提供了不同类型的云数据库产品,服务于不同规模的企业。 【Microsoft SQL Azure的体系架构】SQL Azure是一...
在Windows上安装PostgreSQL,你可以选择官方提供的EnterpriseDB或社区版的安装程序。安装过程中会配置服务器、设置默认端口(通常是5432)、创建默认的数据库集群,并创建一个超级用户(如`postgres`)。同时,安装...
EDB(EnterpriseDB)是一种基于PostgreSQL的企业级数据库管理系统,它扩展了PostgreSQL的功能,提供了更高级别的安全性、性能和兼容性,尤其适用于大型企业或组织。 易语言,全称“易语言.飞扬”,是一款由中国...
- **企业级应用**:目前,GridSQL已经在多个EnterpriseDB客户中得到应用,主要应用于网络日志分析、账单记录处理和数据分析等领域。 - **大规模数据处理**:有客户使用GridSQL处理的数据规模达到了TB级别,甚至有一...
5. 错误处理和日志记录:在迁移过程中,可能会遇到数据类型不兼容、编码问题等,程序应能捕获并处理这些问题,同时记录日志以便后续排查。 6. 触发器和存储过程的转换:如果EDB数据库包含触发器或存储过程,程序需要...
而EDB(EnterpriseDB)是PostgreSQL的一个分支,主要针对企业级应用,提供了Oracle兼容性,适合需要高性能和高可用性的场景。 超级列表框是GUI(图形用户界面)编程中常见的组件,它能显示多列数据,并且可以进行...