anchor.diff:          ok = finalize_local_start(DefaultUsername, DefaultPassword, ?FINALIZE_START_ATTEMPTS),
           {ok, _} = local_change_username(DefaultUsername, Username, DefaultPassword),
           {ok, _} = local_change_password(Username, DefaultPassword, Password),
  -        ok = join_cluster(Username, Password, Host, ClusterHost),
   
           {ok, Host}
       catch
  
positive.code:         Username = proplists:get_value(username, Args),
          Password = proplists:get_value(password, Args),
  
          {StartOk, StartError} = onepanel_utils:apply_on_hosts(Dbs, ?MODULE, local_start, [Username, Password, hd(Dbs)], ?RPC_TIMEOUT),
  
          case StartError of
              [] ->
                  case dao:update_record(?GLOBAL_CONFIG_TABLE, ?CONFIG_ID, [{dbs, Dbs}]) of
                      ok -> ok;
                      Other ->
                          ?error("Cannot update database nodes configuration: ~p", [Other]),
                          onepanel_utils:apply_on_hosts(Dbs, ?MODULE, local_stop, [], ?RPC_TIMEOUT),
                          {error, {hosts, Dbs}}
                  end;
              _ ->
                  ?error("Cannot start database nodes on following hosts: ~p", [StartError]),
  
negative.code: %% ====================================================================
  %% @doc Starts database node on local host.
  %% @end
  -spec local_start(Username :: binary(), Password :: binary()) -> Result when
      Result :: {ok, Host :: string()} | {error, Host :: string()}.
  %% ====================================================================
  local_start(Username, Password) ->
      Host = onepanel_utils:get_host(node()),
      try
          ?debug("Starting database node"),
  