Você tem dois cenários possíveis aqui:
o celular tem que ter o sistema instalado, ou somente parte dele ou acessa apenas a pagina que contem meu sistema ?
-> Se seu sistema for um site: o celular não precisa ter nada instalado, ele acessa o site e pronto
-> Se seu sistema for um aplicativo: você precisa instalar o aplicativo no celular para funcionar
onde ficará o meu banco de dados e o sistema em si ?
-> Se seu sistema for um site: tanto back end quanto front end quanto banco de dados ficam rodando no servidor que você contratar pra hospedar o site
-> Se seu sistema for um aplicativo: o back end e o banco de dados ficam rodando no servidor que você contratar, mas o front end (o aplicativo no caso) roda no celular, então são “2 sistemas” separados, o front e o back
Devo pagar uma hospedagem em um servidor para colocar o meu sistema e o banco de dados ou estes ficarão na minha maquina e apenas pago o dominio ?
Você pode usar sua máquina para rodar o back end e o banco de dados, mas isso traria uma série de problemas:
- se seu computador desligar o sistema fica fora do ar
- se seu provedor de internet trocar o IP do seu computador o dominio vai apontar pro IP errado e seu sistema irá ficar fora do ar
- se você usar seu computador pra outras coisas enquanto ele hospeda o sistema, você irá prejudicar a performance dele
Recomenda-se que sistemas fiquem sempre hospedados em um servidor dedicado à isso
E pra terminar queria comentar que esse assunto é muito mais profundo do que isso, dei uma pincelada muito superficial pra vc entender o raciocínio, mas recomendo você dar uma pesquisada por “Arquiteturas Cliente e Servidor”