O uso de aspas é para parar o shell interpretando certos caracteres de pontuação, como espaço (separador de parâmetro), > (redirecionamento de saída), * (curinga na máscara de arquivo), etc.
As aspas simples interrompem toda a interpretação do texto citado, enquanto as aspas duplas permitem a expansão $ (e algumas outras). O comando dentro de um script não é diferente daquele digitado para um prompt interativo.
O endereço IP não possui caracteres específicos do shell, nem root , portanto, eles não precisam ser citados. Se a sua senha tiver caracteres específicos do shell, como um espaço, ela precisará ser citada e, como ela exige a expansão $ , ela precisará ter aspas duplas. O parâmetro -Bse tem espaço e ; , por isso precisa de cotação, mas também o fará, pois não há $ de expansão.
As variáveis que você está expandindo $sqlip e $sqlpass precisam ser definidas dentro da subshell que executa o script, então elas precisam ser definidas na subshell ou definidas como export no shell de chamada.