Webhost
O
serviço Hosting Base de Dados destina-se a todos
os Clientes empresariais que, desejando ter páginas
na Internet com funcionalidades de recolha de informação
das Base de Dados e preenchimento das mesmas, não
possuem nem querem vir a possuir um Servidor, recorrendo
assim à infra-estrutura partilhada da OniTelecom.
O
cliente necessita de efectuar os seguintes passos para poder
utilizar com sucesso a sua Base de Dados instalada na infra-estrutura
partilhada da OniTelecom.
1º Passo
•
O cliente deverá confirmar que possui os seguintes
dados:
Nome
da Base de Dados: <nome_db>
Tipo: MySQL
Login Admin: <user_admin>
Password Admin: <pass_admin>
Login de Leitura: <user_leitura>
Password de Leitura: <pass_leitura>
Quota (MBytes):
Nome do servidor de mysql: mysql.lx.esp
Nota: Nos scripts de exemplo os valores entre < > devem
ser substirtuidos pelo respectivo valor.
2º
Passo
•
Copiar a estrutura da base de dados (Tabelas e Campos) do
ambiente de Pré-Produção que o cliente
utiliza para o repositório partilhado da OniTelecom,
através da criação de um “Dump”
file
3º
Passo
•
Efectuar o Up-Load do ficheiro com a estrutura “Dump”
para o repositório de Hosting de páginas do
cliente.
4º
Passo
•
Executar o “script” que contem o “Dump”
file com a estrutura da base de dados.
5º
Passo
•
Incluir nos ficheiros de HTML o respectivo código
(PERL, PHP, ASP) para inserir e/ou visualizar a informação
que está na base de dados.
MySQL
• Processo para criar o ficheiro com
a estrutura da base de dados (Tabelas) que está a
utilizar em pré-produção e necessita
de passar para o repositório partilhado da OniTelecom.
$ mysqldump –u user –h servermysql
–p database > dump.sql
• Confirmar que foi criado um ficheiro
“Dump” com a seguinte estrutura.
--
-- Host: mysql Database: <nome_db>
---------------------------------------------------------
-- Server version 3.23.49
--
-- Table structure for table '<nome_db>'
--
CREATE TABLE Tab1 (
id int(7) unsigned zerofill NOT NULL auto_increment,
value(7) unsigned zerofill NOT NULL default '0000000',
PRIMARY KEY (id)
) TYPE=MyISAM;
--
-- Dumping data for table 'Tab1 '
INSERT INTO Tab1 VALUES (0000001,0000002);
INSERT INTO Tab1 VALUES (0000001,0000002);
INSERT INTO Tab1 VALUES (0000001,0000002);
Processo
para efectuar o “upload” do ficheiro criado
previamente.
1º
Efectuar via FTP o Up-Load do ficheiro.
2º
Confirmar qual é o “User” e
a “Password” do repositório de Hosting
de Páginas. (Esta informação poderá
ser consultada no portal www.net4b.pt
3º
Utilizar um dos “Scripts” que se seguem como
exemplo para carregar o ficheiro.
Nome da base de dados: <nome_db>
Nome de utilizador: <user_admin>
Password de utilizador: <pass_admin>
Ficheiro de SQL: dump.sql
PHP:
------------------------------------------------------
<?
$dbh = mysql_connect('mysql.lx.esp','<user_admin>', '<pass_admin>')
or print(mysql_error()."<br>\n");
mysql_select_db('<nome_db>', $dbh) or print(mysql_error()."<br>\n");
$filename="dump.sql";
$buffer = implode('', file($filename));
$linhas = preg_split("/;/", $buffer);
$i=0;
foreach ( $linhas as $linha ) {
$linha = ltrim($linha);
$linha = rtrim($linha);
if ( $linha != '' ) {
if ( !preg_match("/^--/", $linha) ) {
if ( !preg_match("/^#/",
$linha) ) {
echo
"$linha;\n\n\n\n";
if (mysql_query($linha,$dbh)) {
mysql_query($linha,$dbh);
print "<br><br>\nQuery OK!<br>\n";
} else print("<br><br>\n".mysql_error()."<br>\n");
}
}
}
$i++;
}
?>
------------------------------------------------------
ASP:
------------------------------------------------------
MyConn.Open "DRIVER=MySQL;SERVER=mysql.lx.esp;DATABASE=<nome_db>;
UID=<user_admin>;PWD=<pass_admin>"
Set fs=Server.CreateObject("Scripting.FileSystemObject")
Set f=fs.OpenTextFile(Server.MapPath("dump.sql"),
1)
do while f.AtEndOfStream = false
MyConn.Execute(f.ReadAll)
Loop
f.Close
------------------------------------------------------
Neste momento já está criada a estrutura da
base de dados (Tabelas, Campos e Registos).
• Apartir deste momento já poderá inserir
e/ou visualizar a informação existente na
Base de dados.
INSERT INTO Tab1 VALUES (0000001,0000002);
SELECT id,value from Tab1;
|