Ver Mensaje Individual
  #1  
Antiguo 21-10-2019
shinopeat87 shinopeat87 is offline
Miembro
 
Registrado: oct 2018
Posts: 21
Reputación: 0
shinopeat87 Va por buen camino
no puedo conectar mi aplicacion a la base de datos

hola amigos como estan espero recibir una vez mas su ayuda. les comento que me he enriquecido de informacion con el tema de los archivos.ini para la conexion de mi aplicacion con mysql.
tengo dos maquinas (A) y (B)conectadas en red, en la maquina A he instalado mysql server 5.7 y he creado una aplicacion de ventas que se conecta a una base de datos creada mediante workbrench, tengo las librerias de mysql (libmysl.dll) en su lugar y todo funciona correctamente.
he creado un archivo.ini llamado conexionbase.ini donde tengo escrito los siguientes parametros que necesito para que el componente FIDERAC
me realize la correcta conexion.

[bd]
Database="Grsistema-db"
[usuario]
User_Name="root"
[pas]
Password="root"
[servidor]
Server="localhost"
[driver]
DriverID="MySQL"
[puerto]
Port="3306"

en el evento oncreate del formprincipal puse el siguiente codigo

Código Delphi [-]
procedure TFormlogin.FormCreate(Sender: TObject);
var
bd,usuario,pas,servidor,driver,puerto : string;
IniFile : TIniFile ;
begin
  with ModuloDatos do
  begin
   con1.Connected:=False;
   IniFile := TIniFile.Create(ExtractFilePath(Application.ExeName)+'conexionbase.ini');
   bd := IniFile.ReadString('bd','Database','');
   usuario := IniFile.ReadString('usuario','User_Name','');
   pas := IniFile.ReadString('pas','Password','');
   servidor:= IniFile.ReadString('servidor','Server','');
   driver := IniFile.ReadString('driver','DriverID','');
   puerto := IniFile.ReadString('puerto','Port','');

   If bd = '' then
   begin
   ShowMessage('Error al cargar Base de Datos');
   Application.Terminate;
   end
   else
   begin
   con1.Params.Clear;

   con1.Params.Database:= bd;
   con1.Params.UserName:=usuario;
   con1.Params.Password:=pas;
   con1.Params.Add('Server='+servidor);
   con1.Params.DriverID:=driver;
   con1.Params.Add('Port='+puerto);
   con1.Connected:= True;
   end;

  end;

end;
esto me levanta sin problemas el programa ya que este lee lo que tiene el archivo.ini y se conecta a la base de datos
ahora mi problema es el siguiente, tenia entendido que cuando lleve la aplicacion a la maquina B solo deberia modificar el archivo ini

[servidor]
Server="localhost" por "ipdelservidor"

lo hago pero al iniciar el programa me tira este error :

[FireDAC][phys][Mysql]Access denied for user 'root'@'ipdelamaquinaB'(using password: YES)

no se a que se debe.. instale workbrench en la maquina B y pude conectarme remotamente pero no puedo hacerlo desde mi aplicacion.
Responder Con Cita