Criar um novo banco de dados a partir de outro banco de dados

Allie Syadiqin:

Eu estou usando CodeIgniter 3 e MySQL 5.7 e eu preciso encontrar uma maneira de criar um novo banco de dados on-the-fly para cada novo cliente que se inscrever para uma conta.

Então, basicamente, eu tenho um esqueleto ou uma fonte de banco de dados chamado db_source que contém todas as tabelas e alguns dados iniciais. Eu preciso ser capaz de criar um novo banco de dados, por exemplo. db_client_xxx, cada vez que um novo usuário se cadastra para uma conta. Eu preferiria criar o novo banco de dados do banco de dados fonte, se possível.

Se alguém precisar de mais informações, por favor me avise. Obrigado.

Regards, Allie

Alex7:

Uma pergunta semelhante ao que você precisa foi respondida aqui: como importar ficheiro.sql no banco de dados mysql usando php

Você pode despejar o db_source em um arquivo. As respostas corretas explica como executar importação um despejo em um banco de dados existente. O que você tem que adicionar a esse roteiro é criar banco de dados antes disso.

Tenha em mente que a criação do banco de dados pode levar algum tempo e pode não ser uma experiência muito boa para o usuário.

Se posso sugerir-lhe outra opção é criar antecipadamente as bases de dados, por exemplo: Database_1, Database_2 etc. e quando um novo usuário cria um banco de dados de uma conta de atribuição que não é usado para essa conta. Isso pode ser mais fácil e mais rápido para o usuário. Você pode criar uma tarefa agendada para manter a criação de banco de dados para que você sempre tem uma série de X bases de dados disponíveis. Esta abordagem também pode ser mais fácil porque você pode usar shell em vez de PHP para despejo e criar novos bancos de dados.

Acho que você gosta

Origin http://43.154.161.224:23101/article/api/json?id=347526&siteId=1
Recomendado
Clasificación