Re: Need to fix one more glitch in upgrade to -10.2

Поиск
Список
Период
Сортировка
От Adrian Klaver
Тема Re: Need to fix one more glitch in upgrade to -10.2
Дата
Msg-id b9a2398b-9d62-97fb-2c4e-9b899bba5cd6@aklaver.com
обсуждение исходный текст
Ответ на Re: Need to fix one more glitch in upgrade to -10.2  (Rich Shepard <rshepard@appl-ecosys.com>)
Ответы Re: Need to fix one more glitch in upgrade to -10.2  (Rich Shepard <rshepard@appl-ecosys.com>)
Список pgsql-general
On 02/17/2018 02:25 PM, Rich Shepard wrote:
> On Sat, 17 Feb 2018, Adrian Klaver wrote:
> 
>> How did you upgrade, dump/restore or pg_upgrade?
> 
> Adrian,
> 
>    Ran 'pg_dumpall -c -f <filename>.sql' prior to doing anything. Then 
> built,
> installed the new version, upgraded rc.postgresql (only differences were
> version numbers), and ran 'pg_upgrade ...' with the appropriate binary and
> data directory paths.

Did pg_upgrade spit out any warnings/errors?

> 
>> What is in rc.postgresql? Is there maybe another start script in etc/ for
>> the new version?

In your previous post you showed:
# /etc/rc.postgresql reload

yet below shows:

/etc/rc.d/rc.postgresql

Cut and paste error or not?

So are env variables set correctly?

Your ps ax output showed a Postgres instance running:

postgres -D /var/lib/pgsql/10.2/data

Do you know what port it is using and try to connect to it?


> 
>    Nope. One script per application.
> 
> /etc/rc.d/rc.postgresql:
> 
> #!/bin/bash
> 
> # PostgreSQL startup script for Slackware Linux
> #
> # $Revision$
> # $Date$
> #
> # Copyright 2007-2018 Adis Nezirovic <adis_at_linux.org.ba>
> # All rights reserved.
> #
> # Redistribution and use of this script, with or without modification, is
> # permitted provided that the following conditions are met:
> #
> # 1. Redistributions of this script must retain the above copyright
> #    notice, this list of conditions and the following disclaimer.
> #
> #  THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR 
> IMPLIED
> #  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
> #  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  
> IN NO
> #  EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
> #  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 
> LIMITED TO,
> #  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 
> PROFITS;
> #  OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
> #  WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
> #  OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
> #  ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
> 
> # Do not source this script (since it contains exit() calls)
> #
> # Since version 9.3 this startup script can run multiple PostgreSQL
> # versions on different ports and with different data dirs.
> # # e.g. PG_VERSION=10.2 PG_PORT=6432 /etc/rc.d/rc.@PRGNAM@ start
> 
> PG_VERSION=${PG_VERSION:-@PG_VERSION@}
> PG_PORT=${PG_PORT:-@PG_PORT@}
> LIBDIRSUFFIX="@LIBDIRSUFFIX@"
> LOGFILE=/var/log/@PRGNAM@-$PG_VERSION
> DATADIR=/var/lib/pgsql/$PG_VERSION/data
> POSTGRES=/usr/lib${LIBDIRSUFFIX}/@PRGNAM@/$PG_VERSION/bin/postgres
> PG_CTL=/usr/lib${LIBDIRSUFFIX}/@PRGNAM@/$PG_VERSION/bin/pg_ctl
> PIDFILE=$DATADIR/postmaster.pid
> 
> # oom-killer score
> #
> # 
> http://www.postgresql.org/docs/10.2/static/kernel-resources.html#LINUX-MEMORY-OVERCOMMIT 
> 
> PG_OOM_ADJUST_FILE=/proc/self/oom_score_adj
> PG_MASTER_OOM_SCORE_ADJ=-1000
> PG_CHILD_OOM_SCORE_ADJ=0
> PG_ENV="PG_OOM_ADJUST_FILE=$PG_OOM_ADJUST_FILE 
> PG_OOM_ADJUST_VALUE=$PG_CHILD_OOM_SCORE_ADJ"
> 
> # Return values (according to LSB):
> # 0 - success
> # 1 - generic or unspecified error
> # 2 - invalid or excess argument(s)
> # 3 - unimplemented feature (e.g. "reload")
> # 4 - insufficient privilege
> # 5 - program is not installed
> # 6 - program is not configured
> # 7 - program is not running
> 
> pg_ctl()
> {
>      CMD="$PG_CTL -o '-p $PG_PORT' $@"
>      su - postgres -c "$PG_ENV $CMD"
> }
> 
> if [ ! -f $POSTGRES ]; then
>      echo "Could not find 'postgres' binary. Maybe PostgreSQL is not 
> installed properly?"
>      exit 5
> fi
> 
> case "$1" in
> 
>      "start")
>          echo "Starting PostgreSQL"
>          touch $LOGFILE
>          chown postgres:wheel $LOGFILE
>          chmod 0640 $LOGFILE
> 
>          if [ ! -e $DATADIR/PG_VERSION ]; then
>              echo "You should initialize the PostgreSQL database at 
> location $DATADIR"
>              echo "e.g. su postgres -c \"initdb -D $DATADIR 
> --locale=en_US.UTF-8 -A md5 -W\""
>              exit 6
>          fi
> 
>          if [ $(pgrep -f $POSTGRES) ]; then
> 
>              echo "PostgreSQL daemon already running"
>              if [ ! -f $PIDFILE ]; then
>                  echo "Warning: Missing pid file $PIDFILE"
>              fi
>              exit 1
> 
>          else
>              test -e "$PG_OOM_ADJUST_FILE" && echo 
> "$PG_MASTER_OOM_SCORE_ADJ" > "$PG_OOM_ADJUST_FILE"
>              pg_ctl start -w -l $LOGFILE -D $DATADIR
>              exit 0
>          fi
>      ;;
> 
>      "stop")
>          echo "Shutting down PostgreSQL..."
>          pg_ctl stop -l $LOGFILE -D $DATADIR -m smart
>      ;;
> 
>      "force-stop")
>          # Take care! This will kill _all_ client connections
>          # and rollback current transactions.
>          echo "Shutting down PostgreSQL (fast)..."
>          pg_ctl stop -l $LOGFILE -D $DATADIR -m fast
>      ;;
> 
>      "unclean-stop")
>          # Take care! This will abort server process itself
>          # resulting with database recovery on next start.
>          echo "Shutting down PostgreSQL (immediate)..."
>          pg_ctl stop -l $LOGFILE -D $DATADIR -m immediate
>      ;;
> 
>      "restart")
>          echo "Restarting PostgreSQL..."
>          test -e "$PG_OOM_ADJUST_FILE" && echo 
> "$PG_MASTER_OOM_SCORE_ADJ" > "$PG_OOM_ADJUST_FILE"
>          pg_ctl restart -l $LOGFILE -D $DATADIR -m smart
>      ;;
> 
>      "force-restart")
>          # Take care! This will kill _all_ client connections
>          # and rollback current transactions.
>          echo "Restarting PostgreSQL (fast)..."
>          pg_ctl restart -l $LOGFILE -D $DATADIR -m fast
>      ;;
> 
>      "unclean-restart")
>          # Take care: This will abort server process itself
>          # resulting with database recovery on start.
>          echo "Restarting PostgreSQL (immediate)..."
>          pg_ctl restart -l $LOGFILE -D $DATADIR -m immediate
>      ;;
> 
>      "reload")
>          echo "Reloading configuration for PostgreSQL..."
>          pg_ctl reload -l $LOGFILE -D $DATADIR -m smart
>      ;;
> 
>      "status")
>          if [ $(pgrep -f $POSTGRES) ]; then
>              echo "PostgreSQL is running"
> 
>              if [ ! -e $PIDFILE ]; then
>                  echo "Warning: Missing pid file $PIDFILE"
>              fi
> 
>              exit 0
>          else
>              echo "PostgreSQL is stopped"
> 
>              if [ -e $PIDFILE ]; then
>                  echo "Detected stale pid file $PIDFILE"
>              fi
> 
>              exit 0
>          fi
>      ;;
> 
>      *)
>          # unclean-stop and unclean-restart are not documented on purpose.
>          echo "Usage: $0 
> {start|stop|force-stop|status|restart|force-restart|reload}"
>          exit 1
>      ;;
> esac
> 
> Regards,
> 
> Rich
> 
> 


-- 
Adrian Klaver
adrian.klaver@aklaver.com


В списке pgsql-general по дате отправления:

Предыдущее
От: Rich Shepard
Дата:
Сообщение: Re: Need to fix one more glitch in upgrade to -10.2
Следующее
От: hmidi slim
Дата:
Сообщение: query performance