Lock wait timeout exceeded; try restarting transaction

Tinggalkan Komentar

Saat kami mengembangkan aplikasi software, kami mendapati error report operasi database innodb yang melibatkan transaction dengan peringatan error sbb, “Lock wait timeout exceeded; try restarting transaction”. Kami cek pada show processlist apakah ada process transaction mysql yang masih berjalan, dan hasilnya tidak ada process transaction yang bekerja.

Selanjutanya mari kita analisa masalahnya, pada pesan tersebut dikatakan wait timeout, kami berpikir apakah time nya kurang panjang.  Terpintas ide solusi, apakah mungkin ada yang salah dengan konfigurasi innodb-nya. Ternyata memang benar <code>innodb_lock_wait_timeout</code> -nya kurang lama, setelah kami perbesar menjadi 500 dari nilai defaultnya yaitu 50, software yang kami kembangkan kembali bekerja normal.

Berikut langkah-langkah yang kami lakukan:

  • Buka dan edit file my.cnf

Karena ini adalah klien pekerjaan freelance kami maka kami menggunakan OS Linux Slackware, dimana letak konfigurasi my.cnf berada di direktori /etc/my.cnf .

$ cd /etc/
$ vim my.cnf

  • Uncomment semua parameter yang terdapat kata-kata innodb.

Hilangkan semua comment dengan keyword innodb, sehingga konfigurasi menjadi seperti ini:

innodb_data_home_dir = /var/lib/mysql
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = /var/lib/mysql
# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high
innodb_buffer_pool_size = 16M
innodb_additional_mem_pool_size = 2M
# Set .._log_file_size to 25 % of buffer pool size
innodb_log_file_size = 5M
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50

  • Perbesar nilai innodb_lock_wait_timeout (dengan satuan detik), pada konfigurasi kami sebesar 500.

innodb_lock_wait_timeout = 50

Menjadi

innodb_lock_wait_timeout = 500

  • Simpan konfigurasi my.cnf
  • Restart mysql daemon.

# /etc/rc.d/rc.mysqld restart

— Selesai —

Walhamdulillah, semoga bermanfaat, aamiin.

Cara menonaktifkan autorun mysql, postgreesql, apache dan openssh di Slackware

3 Komentar

System Startup Slackware

Program pertama yang dijalankan Slackware adalah file /etc/inittab, program ini berisikan skrip bash. File skrip ini menjalankan file skrip /etc/rc.d/rc.S, sebagai inisialisasi system (sysinit). Dan file rc.S memanggil beberapa file skrip lainnya untuk melengkapi proses init startup, diantaranya beberapa file-file skrip yang dijalankan adalah:

  • rc.S, 
  • rc.acpid, 
  • rc.hotplug, 
  • rc.modules,
  • rc.pcmcia, 
  • rc.serial, 
  • rc.sysvinit.

Sehingga jika kita menginginkan service tertentu dijalankan atau dihentikan pada saat init startup, maka yang menjadi rujukan adalah file skrip /etc/rc.d/rc.S. File skrip ini diprogram dengan menggunakan bahasa Shell, dan menjalankan file-file skrip shell lainnya. Untuk melakukan start sebuah program saat init startup, kita perlu membuat file skrip rc.X terlebih dahulu, kemudian disalin ke folder /etc/rc.d, dengan cara penamaan rc.nama_program. Pada tulisan ini kami tidak menjelaskan bagaimana membuat file skrip rc.
Setelah init system berhasil, maka selanjutnya Slackware melakukan inisialisasi runlevel. Runlevel dibedakan menjadi dua yaitu multiuser dan single user. File-file skrip terkait dengan inisialisasi runlevel antara lain:

  • rc.0 –> Halt (runlevel 0)
  • rc.4 –> Multi User GUI (runlevel 4)
  • rc.6 –> Reboot (runlevel 6)
  • rc.K –> Single User (runlevel 1)
  • rc.M –> Multi User CLI (runlevel 2 dan 3) 

Secara default Slackware berjalan pada runlevel 2 dan 3. Runlevel startup default dapat diganti menjadi runlevel 1, 2, 3 atau 4 dengan cara mengedit file /etc/inittab. File skrip ini berisi tentang pada runlevel berapa Slackware melakukan inisialisasi runlevel startup serta bagaimanakah slackware akan melakukan shutdown, reboot dan halt.

Source: http://en.wikipedia.org/wiki/Runlevel#Slackware_Linux

Cara menonaktifkan mysql, postgreesql, apache dan openssh

Tujuan kami menonaktfikan keempat service tersebut adalah menghemat resource komputer, , daripada service tersebut sia-sia berjalan karena tidak digunakan. Dan jika kita menginginkan salah satu atau lebih dari keempat service tersebut berjalan maka dapat kita lakukan secara manual. Dengan cara menjalankan perintah /etc/rc.d/rc.mysqld start, /etc/rc.d/rc.httpd start, /etc/rc.d/rc.postgresql start, dan /etc/rc.d/rc.sshd start di terminal.

Langkah-langkah menonaktifkan mysql, postgreesql, apache dan openssh adalah:

  •  Sebagai root / superuser edit file /etc/rc.d/rc.M.
  • Cari pada file tersebut, keyword rc.mysqld, rc.httpd, rc.postgresql.

# Start the MySQL database:
if [ -x /etc/rc.d/rc.mysqld ]; then
 . /etc/rc.d/rc.mysqld start
fi

# Start Apache web server:
if [ -x /etc/rc.d/rc.httpd ]; then
 . /etc/rc.d/rc.httpd start
fi

# Start PostgreSQL database:
if [ -x /etc/rc.d/rc.postgresql]; then
 . /etc/rc.d/rc.postgresql start
fi

berikan tanda komentar (#) pada awal baris teks ketiga service di atas. Maka skrip menjadi:

# Start the MySQL database:
#if [ -x /etc/rc.d/rc.mysqld ]; then
# . /etc/rc.d/rc.mysqld start
#fi

# Start Apache web server:
#if [ -x /etc/rc.d/rc.httpd ]; then
# . /etc/rc.d/rc.httpd start
#fi

# Start PostgreSQL database:
#if [ -x /etc/rc.d/rc.postgresql]; then
# . /etc/rc.d/rc.postgresql start
#fi

  • Simpan file.
  • Karena openssh termasuk jenis service jaringan, maka file yang perlu diedit adalah file /etc/rc.inet2.

# Start the OpenSSH SSH daemon:
if [ -x /etc/rc.d/rc.sshd ]; then
 echo "Starting OpenSSH SSH daemon: /usr/sbin/sshd"
 /etc/rc.d/rc.sshd start
fi

ubah menjadi:

# Start the OpenSSH SSH daemon:
# if [ -x /etc/rc.d/rc.sshd ]; then
# echo "Starting OpenSSH SSH #daemon: /usr/sbin/sshd"
# /etc/rc.d/rc.sshd start
#fi

  • Simpan file.
  • Lakukan ujicoba dengan cara restart komputer. Apakah keempat service tersebut masih berjalan saat startup.

 

MySQL table ‘IN USE’ fix

Tinggalkan Komentar

Salah satu table dari database kami muncul pesan “IN USE”, karena tidak sempat discreenshoot, kami ambil/copy kan dari google screen yang mana kasus nya hampir sama. Beberapa orang sempat menyarankan, copy file bla-bla dan bla-bla dari windows ke linux, pokoknya saya gak mudeng caranya (karena menyangkut window-window), jadi pengennya gak pakai saran windows-windowsan namun pakai cara lain yang lebih sederhana dan tidak melibatkan windows.

table in use

Contoh: table IN USE, gambar di copy dari http://www.hostingformula.net/wp-content/uploads/2009/02/table_in_use.jpg

Maka cara mengatasi masalah tersebut yang lebih sederhana adalah:

  • Pilih tabel yang bermasalah, click centang tabel tersebut.
Centang tabel yang bermasalah

Centang tabel yang bermasalah

  • Pilih Action “repair table”, dan execute dengan cara klik “Go” di bagian bawah.
Pilih repair table

Pilih repair table

  • Abaikan warning, cek kembali tabel bersangkutan. Insya ALLAH kembali normal.

Walhamdulillah.

Import Project SVN [eclipse] dari Repository

Tinggalkan Komentar

Melanjutkan tulisan berjudul Subversive Eclipse, setelah subversive eclipse terinstall selanjutnya adalah melakukan import project svn dari repository svn server. Berikut langkah-langkahnya:

Import Project SVN dari Repository

  • Buat Project baru di File > New > PHP Project.
pilih berkas

Membuat project baru

  • Pilih folder yang akan digunakan sebagai folder project.
Pilih Folder

Pilih folder

Pilih Folder

Pilh Folder

  • Setelah project tercipta, klik kanan pada project, pilih Import.
Pilih project > import

Pilih project > import

Pilih SVN Project

Pilih SVN Project

  • Pilih “Use existing repository location:”.
Pilih "Use existing repository location:"

Pilih "Use existing repository location:"

  • Pilih repository yang dikehendaki. Klik Next. Klik Finish.
Pilih "Use existing repository location:"

Pilih "Use existing repository location:"

  • Maka akan keluar window Check Out As, pilih “Check out as a folder into existing project”.
pilih "Check out as a folder into existing project"

pilih "Check out as a folder into existing project"

  • Klik Next, Pilih project yang dikehendaki untuk di import source dari SVN server/repository.
Pilih project yang dikehendaki untuk di import source dari SVN server/repository

Pilih project yang dikehendaki untuk di import source dari SVN server/repository

  • Klik Finish. Tunggu beberapa saat karena eclipse sedang men-check out source.
Tunggu beberapa saat karena eclipse sedang men-check out source

Tunggu beberapa saat karena eclipse sedang men-check out source

Hasilnya

Hasilnya

Cara Lainnya:

  1. Klik kanan di Tab Workspace. Pilih “Import…”, kemudian keluar window Import, pilih folder SVN > Project from SVN.
  2. Klik Next, pilih “Use existing repository location:” dan pilih svn repository yang dikehendaki.
  3. Klik Next, Pilih Head Revision, Klik Next.
  4. Klik Finish.
  5. Muncul window “Check Out As”.
  6. Pilih “Check out as a project with the name specified:”, masukkan nama project yang digunakan untuk source dari svn repository ini. Klik Next.
  7. Hilangkan centang “Use default workspace location”, kemudian pilih lokasi folder yang dikehendaki.
  8. Klik Finish. Tunggu proses yang sedang berlangsung.

Selesai, walhamdulillah.

Alternatif AutoCad yaitu DraftSight

Tinggalkan Komentar

DraftSight now available: Free CAD software *

DraftSight generally takes just a few minutes to download, and supports Microsoft® Windows XP®, Windows Vista®, Windows® 7 (General Release), Mac® and Linux®** (Mac and Linux currently in Beta).
More than ONE MILLION people have downloaded DraftSight.  Download now!

DraftSight™ was built with CAD users in mind and includes:

User Environment & Features

  • Cartesian coordinate system
  • Command line input
  • Traditional toolbars and menus
  • Wheel-mouse pan & zoom
  • Blocks & reference files
  • Layers & layer manager
  • Polygonal ViewPorts
  • ViewPort locking
  • Freeze, lock or turn off layers per ViewPort
  • Background masks for notes
  • Property manager
  • View proxy objects
  • Dynamic pan & zoom
  • Command aliases
  • Menu files
  • CTB and STB print style tables
  • SHX and TTF fonts
  • LineStyle files
  • Hatch pattern files
  • Templates

Interoperability

  • Read and write support for DWG/DXF files*
  • Save DWG/DXF files back to previous versions*
  • Create binary or ASCII DXF files*
  • Attach image files (.bmp, .gif, .jpg, .jpeg, .png, .tif, & .tiff)
  • Attach external reference drawings
  • Export to file (.jpg, .pdf, .png, & svg.)
  • Save as .wmf, .jpeg, .pdf, .png, .sld, .svg, .tif, & .stl file formats
  • Multi-page PDF creation
  • Publish to eDrawings or Drawings Now

Productivity Enhancers

  • Consolidated options dialog
  • Enhanced, easy to read, command prompts
  • Home palette
  • Smart calculator
  • Quick print
  • Context sensitive help

Setup and Administration

  • Support for Windows®, Mac & Linux operating systems
  • Multi-language character set support including Unicode fonts
  • Customizable interface: command aliases, double-click actions, menus, right-click menus, shortcut keys, toolbars, etc.
  • Quick and free to download
  • Fast “one-click” installation

Entities

  • Arcs, circles, & lines
  • Notes & SimpleNotes
  • Tables
  • Blocks and BlockAttributes
  • Ellipses & elliptical arcs
  • RichLines, PolyLines, 3D PolyLines, & Splines
  • Points & rings
  • Hyperlinks
  • ViewPorts
  • Masks & region
  • ISO, ANSI & Traditional Hatch patterns
  • Solid & gradient Fill
  • Dimensions: Arc length, radius, diameter, baseline, linear, ordinate, etc.
  • Tolerances, Leaders & CenterMarks

Drafting Tools

  • Snap & Grid
  • Chamfer & Fillet
  • Tracking guides & Polar guides
  • Get area, distance, or coordinates information
  • Double-click editing
  • Undo/Redo
  • EntityGrips, EntitySnaps, Entity
  • InfiniteLines, Rays & Reference Points
  • Select entities using filters, SmartSelect, or by window, crossing window, crossline, polygonal window, etc.

Drawing Setup Tools

  • Customizable coordinate system
  • RichLine styles
  • Layer manager
  • Table styles
  • Points format
  • Text Styles
  • Unit system
  • Multiple layout
  • Dimension styles
  • Named page layouts

Edit Tools

  • Move, scale & rotate
  • Stretch & change length
  • Mirror, copy, offset and pattern copy
  • Trim & extend
  • Split & weld
  • Edit blocks in-place or isolate for edit
  • Open reference drawings from within the base drawing
  • Clip references and images
  • Modify Hatch and fill pattern, origin, etc
  • Edit note properties: direction, justification, line spacing, text height, TextStyle, etc.

* Uses the Teigha™ Classic for .dwg files and Teigha for .dwg files specifications from the Open Design Alliance.

DraftSight and the DraftSight logos are trademarks of Dassault Systèmes in the US and/or other countries. Other brand and product names are trademarks of their respective owners. Copyright © 2010 Dassault Systèmes.

*Standalone license. Activation required.

**DraftSight supports Ubuntu®, Fedora®, Suse®, and Mandriva®. For information regarding system requirements for DraftSight on Linux® please click here.

Entri Lama

Ikuti

Get every new post delivered to your Inbox.