1#!/bin/bash
2
3# Copyright (c) 2010, 2021, Oracle and/or its affiliates.
4#
5# This program is free software; you can redistribute it and/or modify
6# it under the terms of the GNU General Public License, version 2.0,
7# as published by the Free Software Foundation.
8#
9# This program is also distributed with certain software (including
10# but not limited to OpenSSL) that is licensed under separate terms,
11# as designated in a particular file or component or in included license
12# documentation.  The authors of MySQL hereby grant you an additional
13# permission to link the program and your derivative works with the
14# separately licensed software that they have included with MySQL.
15#
16# This program is distributed in the hope that it will be useful,
17# but WITHOUT ANY WARRANTY; without even the implied warranty of
18# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19# GNU General Public License, version 2.0, for more details.
20#
21# You should have received a copy of the GNU General Public License
22# along with this program; if not, write to the Free Software
23# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
24
25if [ "$MYSQL_HOME" = "" ] ; then
26  source ../env.properties
27  echo MYSQL_HOME=$MYSQL_HOME
28  PATH="$MYSQL_LIBEXEC:$MYSQL_BIN:$PATH"
29fi
30
31#set -x
32
33./start_mgmd.sh
34
35# need some extra time
36for ((i=0; i<10; i++)) ; do printf "." ; sleep 1 ; done ; echo
37
38cwd="$(pwd)"
39mylogdir="$cwd/ndblog"
40mkdir -p "$mylogdir"
41myini="$cwd/../config.ini"
42nNodes=$(grep -c '^ *\[ndbd\]' "$myini")
43
44echo
45echo "starting $nNodes data nodes..."
46for ((i=0; i<nNodes; i++)) ; do
47    echo
48    echo "start ndbd..."
49    # apparently, these options need to come first:
50    # --print-defaults        Print the program argument list and exit.
51    # --no-defaults           Don't read default options from any option file.
52    # --defaults-file=#       Only read default options from the given file #.
53    # --defaults-extra-file=# Read this file after the global files are read.
54    #( cd "$mylogdir" ; "ndbd" --initial )
55    ( cd "$mylogdir" ; "ndbd" -c "$NDB_CONNECT" --initial )
56done
57
58#echo
59#ps -efa | grep ndb
60
61# need some extra time
62for ((i=0; i<3; i++)) ; do printf "." ; sleep 1 ; done ; echo
63
64timeout=60
65echo
66echo "waiting ($timeout s) for ndbd to start up..."
67"ndb_waiter" -c "$NDB_CONNECT" -t $timeout
68
69# need some extra time
70for ((i=0; i<3; i++)) ; do printf "." ; sleep 1 ; done ; echo
71
72./show_cluster.sh
73
74#set +x
75