• 1 启动与关闭数据库实例 ...db2inst1 用户,执行 db2start 启动数据库实例。 $ db2start SQL1063N DB2START processing was successful. 若需要,可运行下面的命令来关闭数据库实例 首先在 db2inst1 用
    1 

    启动与关闭数据库实例

    做任何事情之前,首先要启动数据库实例

    切换到

    db2inst1

    用户,执行

    db2start

    启动数据库实例。

    $ db2start

    SQL1063N DB2START processing was successful.

    若需要,可运行下面的命令来关闭数据库实例

    首先在

    db2inst1

    用户下强制关闭实例上的所有应用程序。

    $ db2 force applications all

    关闭数据库实例。

    $ db2stop

    SQL1064N DB2STOP processing was successful.

    2

    创建数据库

    $ su - db2ins1

    $ db2 create database test1

    DB20000I The CREATE DATABASE command completed successfully.

    [amarsoft@localhost ~]$ su root
    密码:
    [root@localhost amarsoft]# su db2inst
    su: user db2inst does not exist
    [root@localhost amarsoft]# su db2inst1
    [db2inst1@localhost amarsoft]$ db2 create db test
    SQL1005N  The database alias "test" already exists in either the local
    database directory or system database directory.
    [db2inst1@localhost amarsoft]$ db2 connect to test




    3远程连接

    出现
    Connection authorization failure occurred. Reason: Local security service non-retryable error


    authorizationsecurityservicedb2加密算法
    以上的异常是我在连接DB2的时候出现的,很奇怪,因为DB2用了这么长时间从来没出现过这个问题,单从异常消息来看,很明显是DB2连接时验证失败了,说白了用户名和密码的问题,问题是为什么会出现这样的问题,明明用户名和密码是正确的。
    研究之后发现是系统差异,密码不可能以明文方式存储在系统中,都是通过相应的加密算法之后保存的,DB2采用的是SHA256加密,而不少高版本的Linux默认的加密算法已经是SHA512了,这样系统创建的DB2用户密码通过SHA512保存在系统中,连接时DB2通过SHA256将密码加密后与保存在系统中的密码比对,结果当然是失败,解决方案如下:
    打开/etc/pam.d/system-auth文件,找到第二行passwd配置,将sha512改成sha256,保存;

    password    requisite     pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type=
    password    sufficient    pam_unix.so sha256 shadow nullok try_first_pass use_authtok
    password    required      pam_deny.so

    session     optional      pam_keyinit.so revoke
    session     required      pam_limits.so
    -session     optional      pam_systemd.so



    重新运行passwd db2用户,设置密码;
    成功;
    这样将系统的加密方式换成sha256再更新一下保存的密码就可以了。


    如果出现连接不成功问题
    [jcc][t4][2043][11550][3.58.82] 异常 java.net.ConnectException:打开端口 60,000 上服务器 /192.168.100.228 
    的套接字时出错,消息为:拒绝连接。 ERRORCODE=-4499, SQLSTATE
    =08001

    CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙。
    firewall:
    systemctl start firewalld.service#启动firewall
    systemctl stop firewalld.service#停止firewall
    systemctl disable firewalld.service#禁止firewall开机启动

    展开全文
  • 经测试,只添加远程编目节点也可以远程连接数据库,感觉 添加编目节点 查看远程编目端口号:db2 get dbm cfg | grep -i service 如果上面查看到的结果是: TCP/IP Service name (SVCENAME) = DB2_db2inst1 ...

       经测试,只添加远程编目节点也可以远程连接数据库,感觉

    • 添加编目节点
    1. 查看远程编目端口号:db2 get dbm cfg | grep -i service

             如果上面查看到的结果是:

             TCP/IP Service name               (SVCENAME) = DB2_db2inst1

              那么需要在root用户下,vi /etc/services  ,看看对外服务中是否有DB2_db2inst1,如果没有,添加DB2_db2inst1 50000/tcp

         2.添加远程编目:db2 catalog tcpip node <NODENAME> remote <IP> server <远程节点端口号>

                                     db2 catalog tcpip node DBSVR remote 158.235.112.156 server 50000

         3.刷新:db2 terminate

         4.查看节点:db2 list node directory

         5.如果要取消编目节点:db2 uncatalog node DBSVR 

    • 添加远程编目数据库

        1. 添加远程编目数据库:db2 catalog db opdb as opdb at node DBSVR  authentication SERVER

        2. 刷新:db2 terminate

        3. 查看:db2 list db directory

        4. 如果要删除远程编目数据库:db2 uncatalog database opdb

    • 远程连接数据库

        在远程地址连接:db2 connect to opdb user db2user using 123456

    展开全文
  • linux远程连接DB2配置

    2020-07-11 23:31:24
    实现:在客户端远程连接服务器端的db2db2之间的互连)
  • 这里主要针对客户端连接Linux操作系统DB2数据库1、DB2的安装,可以参考http://blog.csdn.net/inkfish/archive/2009/11/01/4755455.aspx(用户:root,db2inst1)2、windows客户端连接·DbVisualizer连接·控制...

     

    这里主要针对客户端连接Linux操作系统上的DB2数据库

    1DB2的安装,可以参考IBM帮助文档:

    http://publib.boulder.ibm.com/infocenter/db2luw/v9r7/basic/help.jsp?topic=/com.ibm.db2.luw.qb.server.doc/doc/r0008865.html

    (用户:rootdb2inst1

    2windows客户端连接

    ·DbVisualizer连接

    ·控制中心连接

     

    2.1DbVisualizer连接

     

    1、准备驱动程序,这个工具是采取JDBC方式进行数据库连接的,所以要准备驱动,DB2连接数据库的驱动有4种,具体可以参考相关网站说明;我们这里需要两个驱动:db2jcc.jardb2jcc_license_cu.jar

    2、创建数据库的连接信息

     

    3、有的时候会报错:这里针对“root capability required”,主要是数据库用户db2inst1需要拥有root的权限。这里我们使用“db2rfe

    具体操作:

     

     

    • 找到样本配置文件。 提供了两个样本配置文件:
      • $HOME/sqllib/instance/db2rfe.cfg 是使用缺省值为非 root 用户 DB2® 实例预先配置的
      • $HOME/sqllib/cfg/db2rfe.cfg.sample 未经过配置
        其中 $HOME
        是非 root 用户的主目录。
    • 将其中一个样本配置文件复制到其他位置,以使初始文件保持不变。
    • 根据需要更新被复制的配置文件。 此配置文件已输入到 db2rfe 命令中(本次修改两个地方,标红部分)。

    ====================================================================================

     

    **

    ** Sample configuration file for db2rfe of IBM DB2

    ** -----------------------------------------------

    **

    ** To select features and settings to configure, uncomment the corresponding

    ** keywords and specify values for those keywords.

    **

    ** Comments are made by placing either an asterisk (*) or a number sign (#) at

    ** the start of a line

    **

    ** =========================================================================

    INSTANCENAME=db2inst1

    ** This is required keyword.

     

     

    ** ----------------------------------------------------------------------------

    ** Enable DB2 Advanced Copy Services (ACS).

    ** ----------------------------------------------------------------------------

    ** Valid value is NO and YES. Change to YES if you need to enable DB2 ACS.

     

    ENABLE_DB2_ACS=NO

     

    ** ----------------------------------------------------------------------------

    ** Enable DB2 High Availability (HA) feature

    ** ----------------------------------------------------------------------------

    ** Valid value is NO and YES. Change to YES if you need to enable this feature.

     

    ENABLE_HA=NO

     

    ** ------------------------------------------------------------------------------

    ** ENABLE DB2 Authentication on the server using local operating system security.

    ** ------------------------------------------------------------------------------

    ** Valid value is NO and YES. Change to YES if you need to enable this feature.

     

    ENABLE_OS_AUTHENTICATION=YES

     

    ** --------------------------------------------

    ** Reserve DB2 remote connection service entry

    ** --------------------------------------------

    ** Valid value is NO and YES. Change to YES if you need to do the reservation.

    ** If SVCENAME and/or SVCEPORT are defined and valid, the DB2 database manager

    ** configuration will be updated accordingly.

     

    RESERVE_REMOTE_CONNECTION=YES

     

    *SVCENAME=db2c_db2inst1

    ** char(14)

     

    *SVCEPORT=48000

    ** Valid value: 1024 - 65535

     

    ** --------------------------------------

    ** Reserve DB2 text search  service entry

    ** --------------------------------------

    ** Valid value is NO and YES. Change to YES if you need to do the reservation.

    ** If SVCENAME_TEXT_SEARCH and/or SVCEPORT_TEXT_SEARCH are defined and valid,

    ** the DB2 Text Search configuration will be updated accordingly.

     

    RESERVE_TEXT_SEARCH_CONNECTION=NO

     

    *SVCENAME_TEXT_SEARCH=db2j_db2inst1

    ** char(14)

     

    *SVCEPORT_TEXT_SEARCH=53000

    ** Valid value: 1024 - 65535

     

    ====================================================================================

    • root 用户权限的用户身份登录。
    • 浏览至 $HOME/sqllib/instance 目录,其中 $HOME 表示非 root 用户的主目录。
    • 使用下列语法来运行 db2rfe 命令:
      db2rfe -f config_file           (使用  ./db2rfe -f config_file
      其中 config_file 是在上面步骤中创建的配置文件。

     

    2.2控制中心的连接

    需要设置Catalog,具体步骤:

    ·db2 catalog tcpip node hljnode remote 192.168.100.54 server 50000

    ·db2 catalog db sample at node hljnode

    ·刷新数据库

    说明:linuxIp 192.168.100.54

    hljnode自定义节点名

    sample是一个样例数据库

    展开全文
  •  问题: 数据库创建好以后,本地能够连接,远程确连接不上。返回的sqlstate为08001。  解决方法:  1.查看 dbm配置的svcename,发现为空。  2. 在etc/services下查看db2的服务名 以及端口号  cat etc/...

       环境: aix5.3,DB2 aix64 9.1.0.5

       问题: 数据库创建好以后,本地能够连接,远程确连接不上。返回的sqlstate为08001。

       解决方法:

       1.查看 dbm配置的svcename,发现为空。

        2. 在etc/services下查看db2的服务名 以及端口号

       cat etc/services|grep db2

        3.把查找到的服务名,更新到dbm中

       db2 update dbm cfg using svcename  serviceName(相应的服务名)

       这样修改发现依旧连接不上,

    4.修改db2comm配置

    db2set db2comm=tcp/ip

    问题最终解决,小记以备用!

    展开全文
  • linuxdb2数据库命令

    2017-09-04 22:24:07
    1.db2连接数据库 1 2 su - db2inst1 db2 connect to 数据库名 user 用户名 using 密码 2.db2信息查询命令 1 2 3 4 5 6 ...

    1.db2连接数据库

    1
    2
    su - db2inst1
    db2 connect to 数据库名 user 用户名 using 密码

    2.db2信息查询命令

    1
    2
    3
    4
    5
    6
    7
    8
    9
    db2 list tables             #列出所有表名 <br>  db2 describe table 表名         #显示表字段   <br>  db2 list db directory                #列出该用户创建的所有数据库名
    db2 list tablespaces show detail     #查看当前数据库表空间分配状况
    db2 list application
    db2 list db directory               列出所有数据库
    db2 list active databases           列出所有活动的数据库
    db2 list tables for all             列出当前数据库下所有的表
    db2 list tables for schema btp      列出当前数据库中schema为btp的表
    db2 list tablespaces show detail    显示数据库空间使用情况
    db2 list packages for all

    3. 数据库导入导出

    1、导出数据库的所有表及数据(导出的文件是db2move.lst、export.out、tabxx.ixf、tabxx.msg)

    1
    db2move <数据库名> export  

    2、导入数据库的所有表及数据(需要修改db2move.lst中的数据库名为自己的数据库名)

    1
    db2move <数据库名> import

    3、执行sql语句文件

    1
    db2 -tvf xx.sql

    4.db2数据库数据创建与数据迁移(创建新实例,并将其他数据库备份数据导入)

    1、root下创建用户名密码  

    1
    useradd newgw   passwd newgw

     2、切换db2用户 

    1
    2
    su db2inst1
    cd /home/db2inst1

     3、创建数据库指定编码  

    1
    db2 create db databaseName using codeset utf-8 territory CN #指定编码

     4、连接数据库   

    1
    db2 CONNECT TO databaseName

     5、创建BUFFERPOOL  

    1
    db2 "CREATE BUFFERPOOL epayBUFFER SIZE 1000 PAGESIZE 32K"

     6、创建TABLESPACE    

    1
    db2 "CREATE TABLESPACE epaySpace PAGESIZE 32K MANAGED BY SYSTEM USING ('/home/db2inst1/epay/ts') BUFFERPOOL epayBUFFER"

     7、创建临时表空间   

    1
    db2 "CREATE SYSTEM TEMPORARY TABLESPACE epayBUF PAGESIZE 32 K MANAGED BY SYSTEM USING ('/home/db2inst1/epay/tts') BUFFERPOOL epayBUFFER"

     8、断开连接   

    1
    db2 "DISCONNECT databaseName "

     9、在db2inst1下进行连接数据库 

    1
    db2 connect to databaseName

     10、再授权   

    1
    db2 grant dbadm on database to user databaseName

     11、重新连接  

    1
    db2 connect to databaseName user username using password
    展开全文
  • root下执行 vi /etc/services,添加对外服务,格式为:服务名 端口/连接方式 DB2_db2inst1 50000/tcp 2. 更新db2配置,以db2管理员身份执行 db2set DB2COMM=tcpip db2 update database manager configuration ...
  • linux系统下安装DB2有二个方式,一个是db2setup,这个为图形界面安装,安装到后面需要用到语言包,还有一个是db2_install,这个为命令行安装。 python连接db2有挺多方式,可以查看官网:...
  • 远程db2 如何得知数据库的地址 db2 list db directory db2 list node directory
  • DB2 for linux手动安装

    2019-03-24 20:02:37
    注:转自本人于2016-03-17 00:59:13博客 DB2 for linux手动安装步骤 第一步下载db2数据包 当前最新版本为9.7,从IBM网站下载免费的Express C版本。...把下载下来的包ftp上传到待安装的LINUX机器...
  • DB2客户机上连接远程DB2服务之前,必须正确设置服务端通信协议。DB2支持的协议有TCP/IP、NetBIOS、NPIPE等。 连接远程DB2数据库服务的基本步骤如下: 1. 在客户机对远程DB2节点进行编目。 2. 在客户机对...
  • 1. 使用db2实例用户在服务器执行,查看db2的tcpip服务名称: linuxdb2 get dbm cfg | grep -i "SVCENAME" windows:db2 get dbm cfg | find "SVCENAME" 运行结果: D:\Program Files\IBM\SQLLIB\BIN>db2 get...
  • Linux下安装DB2的步骤

    2017-04-11 12:14:53
    由于工作的需要,刚刚尝试完在Linux下安装DB2数据库,已经连接测试成功,简单做了下总结,由于采用的多为命令行,所以没有必要截图了。望能对其他程序员有所帮助......如果有正确的地方,希望和大家共同讨论.........
  • Linux下安装DB2数据库步骤来源:https://blog.csdn.net/sunrier/article/details/7826233前言: 最近有些项目在Linux下使用的是IBM的DB2数据库,感觉没MySQL那样容易了解深入,可能是DB2数据库更倾向于商业化,没MySQL...
  • 查看db2的默认配置db2set -ALL 若没有下面的配置则追加 DB2FCMCOMM=TCPIP4 DB2COMM=TCPIP DB2AUTOSTART=YES DB2_COMPATIBILITY_VECTOR=MYS DB2FCMCOMM=TCPIP6 DB2SYSTEM=localhost.localdomain DB2INSTDEF=upp 语
  • db2数据库在Linux环境下,可以db2start,却db2 connect to db链接,就是没有反应,请问该怎么解决?
  • 之前写过一篇连接oracle数据库的文章,后来发现连接db2数据库在方法还是有些区别的。
  • odbc for db2,linux下驱动

    2020-06-03 23:32:17
    odbc for db2,linux下驱动
  • Linux 命令行进入DB2

    2019-09-20 17:26:26
    1. docker ps 2.docker exec -it 813cb755c14c /bin/bash ... 4.db2 list db directory 列出目前...5. db2 直接进入db2数据库命令行模式 6.db2 connect to testdb(testdb数据库名称) 如果需要对某一个数据库...
1 2 3 4 5 ... 20
收藏数 18,463
精华内容 7,385