CONTENTS
#contents
----
Lastmodified &lastmod;
----
*db48-4.8.30.0_2 [#x399ac10]


 Checking for packages with security vulnerabilities:
 db48-4.8.30.0_2: Tag: expiration_date Value: 2018-04-30 p5-Net-SMTP-SSL-1.04: Tag: expiration_date Value: 2017-03-31
 db48-4.8.30.0_2: Tag: deprecated Value: Please migrate to db5 or db6, make sure that bitcoin and siblings moved to
 another database or version by then p5-Net-SMTP-SSL-1.04:  Tag: deprecated Value: Deprecated by upstream, use Net::SMTP instead

https://forums.freebsd.org/threads/59309/

 # pkg version -v |grep db
 db5-5.3.28_6                       =   up-to-date with index
 dbus-1.10.14_2                     =   up-to-date with index
 dbus-glib-0.104                    =   up-to-date with index
 gdbm-1.12                          =   up-to-date with index
 php56-dba-5.6.30                   =   up-to-date with index
 php56-odbc-5.6.30                  =   up-to-date with index
 php56-pdo_dblib-5.6.30             =   up-to-date with index
 php56-pdo_odbc-5.6.30              =   up-to-date with index
 ruby22-bdb-0.6.6_5                 =   up-to-date with index


 # pkg info -r db5
 db5-5.3.28_6:
        ruby22-bdb-0.6.6_5
        p5-BerkeleyDB-0.55_1
        apr-1.5.2.1.5.4_2
----
https://wiki.freebsd.org/Ports/BerkeleyDBCleanup

**概要 [#te01addf]

再び:アプリケーションがトランザクション・データベースのためのBerkeley DBを使用している場合、トランザクション・ログ・ファイルを使用した場合、すなわち、あなたがしなければならない使用する古いそれが破損している場合には、そのログからデータベースを回復するためにBerkeley DBのツールやアプリケーションを。ログは通常、あるBerkeley DBバージョンと次のBerkeley DBバージョンとの間で互換性がなく、新しいツールは古いBerkeley DBバージョンによって書き込まれたログを読み取ることができません。

アップグレードプロセスは次のとおりです。 
+ALL:すべてのアプリケーションインスタンス(プロセス)を正常にシャットダウンする 
+トランザクション・データベース(書き込むものに対してのみ。*ログファイル):すべてのデータベースに整合性があることをそれに確認し、必要に応じて回復を実行します。アプリケーションがオプションを提供しない場合は、dbXX_recover(XXはBerkeley DBバージョンのヒントです)とそれを実現するdb_recover-XXユーティリティのバージョンがあります。アプリケーションがされていることを確認していないあなたはdbXX_recoverまたは同様のツールを実行しながら実行しています。
+ALL:バックアップデータベース(* .DBファイル)、および存在する場合:環境(__db *。ファイル)、ログ*。ファイル
+ALL:アプリケーションが「テキストへのデータベースダンプ」のようなユーティリティを提供する場合、それを使用して結果をバックアップします。そうでなければ、db * _dump *ユーティリティを使用することができます(名前にアスタリスク(星)を書いています)。
+Berkeley DB環境(__db。*ファイル)を使用するデータベースの場合のみ:データベース環境(__db。*ファイル、およびそれらのみ!)を削除すると、アプリケーションは通常、起動時に再作成します
+ALL:古いBerkeley DBバージョンをインストールしたままにし、新しいBerkeley DBバージョンをインストールします(ライセンス条件に応じて、db5またはdb6にアップグレードするかどうかを選択します)。 
+ALL:新しいBerkeley DBバージョンを使用するようにアプリケーションを再構築するには、/etc/make.confにWITH_BDB_VER = 5またはWITH_BDB_VER = 6を設定するか、uniquename_WITH_BDB_VER = 5(uniquenameはポートのUNIQUENAMEを指定します。たとえばbogofilter_WITH_BDB_VER = 6)。/usr/ports/Tools/scripts/BDB-upgrade-helper.shスクリプトを使用すると、削除予定の古いBerkeley DBのバージョンに依存するアプリケーションを新しいバージョンに自動的にアップグレードしてから、提供することができます古いBerkeley DBパッケージを削除してください。注:db4.8の使用を主張するいくつかのポートがあります。そのため、db5(またはdb6)を使用するほとんどのポート、およびdb48を使用するポートがほとんどです。これは現在検討中であり、作業中です。
+チェック:データベースをダンプする必要があった場合(上記の警告やパフォーマンスについての互換性については)、元のデータベースファイルを安全な場所に移動し(まだ削除しないでください)、データベースをリロードしてくださいダンプから。アプリケーションの機能を使用するか、それがない場合は、新しいバージョンのdb_load *ユーティリティを使用してください。
+ALL:アプリケーションの再起動 
+ALL:最後に、古いBerkeley DBバージョンを必要とするアプリケーションがすべてアップグレードされ、古いBerkeley DBバージョンのツールがデータベースを回復する必要がないと確信できる場合は、古いBerkeley DBバージョンを削除できます。

 # locate .DB

 # locate db5
   /usr/ports/databases/db5

 portinstall databases/db5

 
/etc/make.conf に 
 WITH_BDB_VER=5

/usr/ports/Tools/scripts/BDB-upgrade-helper.sh

 # pkg info -r db5
 db5-5.3.28_6:
        py27-bsddb-2.7.13_5
        apr-1.5.2.1.5.4_2
        rpm4-4.12.0.1_4
        ruby22-bdb-0.6.6_5
        ruby23-bdb-0.6.6_5
#
#
 # cat /usr/ports/Tools/scripts/BDB-upgrade-helper.sh
 #!/bin/sh
 # $Id$
 # ports/Tools/scripts/BDB-upgrade-helper.sh
 #
 # A helper script to upgrade applications that used to depend on
 # BerkeleyDB ports 4.0...4.7 to use a newer version of BerkeleyDB.
 #
 # Written by Matthias Andree in 2014, and placed under the same
 # license as FreeBSD itself, see /COPYRIGHT or /usr/src/COPYRIGHT.
 
 set -eu
 : ${PREFIX:=/usr/local}
 : ${LOCALBASE:=${PREFIX}}
 
 # check requisites
 tool=
 if   [ -x ${LOCALBASE}/sbin/portmaster ] ; then tool=portmaster ;
 elif [ -x ${LOCALBASE}/sbin/portupgrade ]; then tool=portupgrade;
 else
    echo >&2 "Neither portmaster nor portupgrade installed. Cannot continue."
    echo >&2 "Please install ports-mgmt/portmaster before proceeding."
    exit 1
 fi
 
 # check BerkeleyDB 4.0...4.7 versions
 rx='db4[1-7]?(-nocrypto)?-4'
 if pkg -N 2>/dev/null ; then pkg=yes ; else pkg= ; fi
 if [ -n "$pkg" ] ; then
    # pkg
    dbnames=$(pkg info -x "$rx")
 else
    # old pkg_*
    dbnames=$(pkg_info -E -X "$rx")
 fi
 
 # due to set -e, the script will not reach this point
 # unless there have been matched packages - without packages,
 # pkg_info or pkg will exit with failure.
 
 # check if we need to pass in origins or package names
 if [ "$tool" = portupgrade ] ; then
    if [ -n "$pkg" ] ; then
        dbnames=$(printf '%s\n' "$dbnames" | xargs -n1 pkg info -q -o)
    else
        dbnames=$(printf '%s\n' "$dbnames" | xargs -n1 pkg_info -q -o)
    fi
 fi
 
 # generate the upgrade command
 case "$tool" in
 portmaster)
    cmd="portmaster -R"
    for i in $dbnames ; do cmd="$cmd -r $i" ; done
    ;;
 portupgrade)
    cmd="portupgrade -f -r"
    for i in $dbnames ; do cmd="$cmd -x $i" ; done
    for i in $dbnames ; do cmd="$cmd $i" ; done
    ;;
 *)
    echo >&2 "Internal error in $0." ; exit 1
    ;;
 esac
 
 echo "+ $cmd"
 $cmd
 
 # due to set -e, the script will not reach this point
 # if there was an error or failure with the upgrade tool
 
 if [ -n "$pkg" ] ; then
     pkg delete $dbnames
 else
     pkg_delete $dbnames
 fi
 
 echo "Success."


 root@ns: 2017 02 09 9:55 /root # portinstall databases/db5
 [Reading data from pkg(8) ... - 379 packages found - done]
 ** Found already installed package(s) of 'databases/db5': db5-5.3.28_6
 root@ns: 2017 02 09 9:55 /root # /usr/ports/Tools/scripts/BDB-upgrade-helper.sh
 pkg: No package(s) matching db4[1-7]?(-nocrypto)?-4
 root@ns: 2017 02 09 9:56 /root #
 root@ns: 2017 02 09 9:57 /root #
 root@ns: 2017 02 09 9:57 /root # /usr/ports/Tools/scripts/BDB-upgrade-helper.sh
 pkg: No package(s) matching db4[1-7]?(-nocrypto)?-4
 root@ns: 2017 02 09 9:57 /root #
 
 # pkg delete db48-4.8.30.0_2
----
Total access &counter(total);:本日 &counter(today);:昨日 &counter(yesterday);
#counter([total|today|yesterday]);


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS