Membuat Backup dan Restore Mysql dengan Lazarus

Pagi – pagi buat catatan di blog ” Membuat Backup dan Restore database Mysql di lazarus “ Cara ini berlaku juga di delphi. LAngsung saja Buatlah 2 button, Button Backup dan Restore. Pada proses ini kita menggunakan mysqldump yang sudah disediakan oleh mysql. Lokasi mysqldump tergantung dari instalasi mysqlnya. Jika menggunakan Xampp, cari lokasi terlebihdahulu.

Pada Button Backup isi event click berikut ;

procedure TMain.BackupClick(Sender: TObject);
const
READ_BYTES = 2048;

var
command: TProcess;
s: string;
output: TStringList;
BytesRead, n: LongInt;
m: TMemoryStream;

begin
if not (ZConnection1.User = ‘root’) then begin
ShowMessage(‘Only root could access.’);
Exit
end;
SaveDialog1.Free;
SaveDialog1 := TSaveDialog.Create(Self);
SaveDialog1.InitialDir:= GetUserDir + ‘My Documents\’;
SaveDialog1.Filter:=’Backup Files|*.bfl’;
if SaveDialog1.Execute then begin
s := SaveDialog1.FileName;
if not (copy(s,Length(s)-3,Length(s)-1) = ‘.bfl’) then
s := s + ‘.bfl’;
command := TProcess.Create(Nil);
output := TStringList.Create;
M := TMemoryStream.Create;
BytesRead := 0;
command.CommandLine := ‘c:\mysqldump -u root -p’+ZConnection1.Password+’ -h ‘+ZConnection1.HostName+’ database’;
command.Options := command.Options + [poUsePipes];
command.Execute;
while command.Running do begin
// ensure the space
M.SetSize(BytesRead + READ_BYTES);
// we try to read
n := command.Output.Read((M.Memory + BytesRead)^, READ_BYTES);
if n > 0 then
Inc(BytesRead, n)
else
// whitout data, wait 100 ms
Sleep(100);
end;
// we read the last part
repeat
// ensure the space
M.SetSize(BytesRead + READ_BYTES);
// we try to read
n := command.Output.Read((M.Memory + BytesRead)^, READ_BYTES);
if n > 0 then
Inc(BytesRead, n);
until n <= 0;
M.SetSize(BytesRead);
output.LoadFromStream(M);
output.SaveToFile(s);
output.Free;
command.Free;
M.Free;
ShowMessage(‘Backup ready.’)
end else
ShowMessage(‘Backup canceled.’);
end;

 

Dan untuk button Restore isi dengan prosedure berikut

procedure TFMain.restoreClick(Sender: TObject);
var
s: string;
tfFile: TextFile;
begin
if not (ZConnection1.User = ‘root’) then begin
ShowMessage(‘Only root could access.’);
Exit
end;
OpenDialog1.Free;
OpenDialog1 := tOpenDialog.Create(Self);
OpenDialog1.InitialDir:=GetUserDir+’My Documents\’;
OpenDialog1.Filter:=’Backup Files|*.bfl’;
if OpenDialog1.Execute then begin
AssignFile(tfFile, OpenDialog1.FileName);
if not FileExists(OpenDialog1.FileName) then
exit;
reset(tfFile);
ZQuery1.SQL.Clear;
readln(tfFile,s);
While not eof(tfFile) do begin
Readln(tfFile,s);
if length(s) > 0 then begin
s := StringReplace(s, #10, ”, [rfReplaceAll]);
s := StringReplace(s, #13, ”, [rfReplaceAll]);
s := StringReplace(s, #9, ‘ ‘, [rfReplaceAll]);
if not ((s[1]+s[2]) = ‘–‘) then begin
ZQuery1.SQL.Add(s);
if s[length(s)] = ‘;’ then begin
ZQuery1.ExecSQL;
ZQuery1.SQL.Clear
end
end
end
end;
CloseFile(tfFile);
ShowMessage(‘Restauration done.’);
end else
ShowMessage(‘Restauration canceled.’);
end;

 

Semoga bermanfaat

Advertisements

4 Item yang harus di ingat dalam seting dasar mikrotik

Dasar dari seting mikrotik :

1. Mikrotik mampu berhubungan dengan ISP

2. Mikrotik mendapat akses internet

3. Client mampu berhubungan dengan mikrotik

4. Client mendapat akses internet dari mikrotik

Untuk mendapatkan keempat dasar diatas, kita harus perhatikan 4 item berikut.

1. Interface, berikan identitas setiap ethernet.

2. Address, berikan IP disetiap interface yang sudah di rubah  (jangan lupa /24)

3. Router, setting gateway dari ip isp

4. DNS, isikan dns dari isp atau ip dari mikrotik
Dengan 4 dasar ini mikrotik sudah dapet berfungsi sebagai router pemberi akses internet. Setelah ini silahkan seting sesuai kebutuhan.

Semoga bermanfaat

Cara Memperbaiki relay access denied di Outlook Mac

Sekedar catatan untuk menghindari kesalahan berikutnya. Kirim email pada Outlook pada Mac suka terjadi Acces Denied ketika kirim ke email tertentu. Berikut penyelesaiannya

  1. Buka Tool -> Account

mail

2. Pada Outgoing server -> Klik More Options

mail2 –

3. Pada Authentication -> Isi dengan Use Incoming Server Info

Semoga bermanfaat

Tampilan Windows 10 sangat kecil

Sekedar catatan ketika menemukan tampilan aplikasi di windows 10 sangat kecil. Ada beberapa aplikasi yang terinstal di laptop ato PC kita mempunyai tampilan sangatlah kecil. Informasi yang di dapat dari System Windows 10 ini ternyata mereka menerapkan Scalling, jadi harus di sincronkan antara resolusi dan scalingnya.

Klik kanan pada desktop dan pilih driver vga anda dan pada display di control panel, setingan pada gambar dibawah adalah setingan paling nyaman buat saya.

Screen Shot 06-29-16 at 03.51 PM

 

Kemudian seting Display yang ada di control panel, klik set a custom scaling level, kemudian lilih nilai 100%

Screen Shot 06-29-16 at 03.52 PM

Screen Shot 06-29-16 at 03.52 PM 001

Setting Printer Minolta

sebagai catatan saja, berikut saya screen Shot setingan printer Mesin Foto Copy Minolta, paper akan memilih sendiri dari tray yang tersedia.

Konica Minolta

Membuat slide show di delphi

Membuat slide show tanpa menggunakan componen khusus ( picshow ).
Disini saya menggunakan komponen Timer, DbImage, dan Tpanel. Disini kita akan menampilkan 4gambar saja. Gambar tersimpan di database sehingga setiap saat bisa di rubah gambarnya.

Sediakan 4 timer, semua timer isikan 5000. Timer 1 enabled=true dan timer yang lain enabled=false. Klik 2x ditimer 1 dan isikan kode berikut

Dbimage1.visible:=true;
Dbimage2.visible:=false;
Dbimage3.visible:=false;
Dbimage4.visible:=false;

Timer1.enabled:=false;
Timer2.enabled:=true;
Timer3.enabled:=false;
Timer4.enabled:=false;

Klik 2xTimer2

Dbimage1.visible:=false;
Dbimage2.visible:=true;
Dbimage3.visible:=false;
Dbimage4.visible:=false;

Timer1.enabled:=false;
Timer2.enabled:=false;
Timer3.enabled:=true;
Timer4.enabled:=false;

Klik 2x Timer3

Dbimage1.visible:=false;
Dbimage2.visible:=false;
Dbimage3.visible:=true;
Dbimage4.visible:=false;

Timer1.enabled:=false;
Timer2.enabled:=false;
Timer3.enabled:=false;
Timer4.enabled:=true;

Klik 2x timer 4
Dbimage1.visible:=true;
Dbimage2.visible:=false;
Dbimage3.visible:=false;
Dbimage4.visible:=true;

Timer1.enabled:=true;
Timer2.enabled:=false;
Timer3.enabled:=false;
Timer4.enabled:=false;

Ini logikanya, untuk tampilan disesuaikan masing2. Semoga bermanfaat.

Memperbaiki file system32 yang hilang melalui Booting CD windows

Hanya sebuah catatan tukang service…
Jika Anda mendapati pesan error bahwa salah satu file system32 hilang atau error, lakukan, sebagai contoh file yang hilang ntkrnlmp.exe:
  • Masukkan CD Windows XP dan booting dari CD tersebut.
  • Pada saat muncul opsi R=Repair yang pertama, tekan tombol R.
  • Tekan angka sesuai dengan lokasi instalasi Windows yang ingin diperbaiki yang sesuai.
  • Biasanya #1
  • Pindahlah ke drive CD Drive Anda berada.
  • Tulis: CD i386
  • Tulis: expand ntkrnlmp.ex_ C:\Windows\System32\ntoskrnl.exe
  • Jika Windows XP Anda terinstal di tempat lain, maka ubahlah sesuai dengan lokasinya.
  • Keluarkan CD Anda dan ketikkan EXIT
  • Selesai