Server
network
management
manager
monitoring
middleware
monitor
Navicat For MySQL is a GUI for MySQL developers. I've tried a few tools before but somehow got attached to Navicat due to a few nice features that I'm not going to go into right now. Navicat suffers from a couple of annoying bugs and random crashes. I don't know if I can help fix the random ones but if I can at least file the ones I can reproduce, everyone wins. I have the latest as of today version 8.0.23.
Bug [NAL-15328]: Structure Sync Fails to notice encoding differences
| Last Update: | 13 Mar 2008 12:38 PM |
| Last Replier: | Mayho Ho |
| Status: | Open |
| Department: | Navicat Support Center |
| Created On: | 13 Mar 2008 09:52 AM |
Structure sync doesn't see the difference between my columns that are utf8 and that are latin1. This is a severe bug. I relied on it to compare some production tables and wasn't aware some fields weren't utf8 in one of the tables until I dumped the DDL.
In 2 different databases:
1 2 3 4 5 6 7 8 9 | -- Table "test" DDL CREATE TABLE `test` ( `a` varchar(255) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- Table "test" DDL CREATE TABLE `test` ( `a` varchar(255) character set utf8 default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; |
Now run Structure Sync. It will not report any differences and won't even show utf8ness in the 2nd table.
Bug [VXL-67626]: Navicat crash
| Last Update: | 25 Mar 2008 10:37 AM |
| Last Replier: | Mayho Ho |
| Status: | Open |
| Department: | Navicat Support Center |
| Created On: | 07 Mar 2008 04:50 AM |
If I open the Server Monitor and there's a really long query running (I don't have the exact length), for example a really long SELECT with A OR B OR C, etc, it just crashes. I think there's a buffer overrun somewhere in Navicat's code, so when it does SHOW FULL PROCESSLIST internally, it overruns that buffer.
I would appreciate a fix for this as I lose all my open queries and tables when this happens. I'd be glad to answer any additional questions, but I hope the gist of it is clear.
A fix would involve at least letting a user select between SHOW PROCESSLIST and SHOW FULL PROCESSLIST as well as fixing the crash.
I was able to come up with a test case. I did warn you the query had to be really large :-].
1 2 3 4 5 | CREATE TABLE `media` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`index_status` enum('none') DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1; |
Take an instance of navicat and start a transaction:
> begin;
> select * from media for update;
Now open another Navicat session and issue the attached quite long sql vxl-67626.txt. Because I locked up the table in the previous step, you'll have plenty of time to open up the Server Monitor. The query should remain in the
process list until the first transaction is canceled or completed. Now launch Server Monitor and observe it crash.
monit is a utility for managing and monitoring, processes, files, directories and devices on a UNIX system. Monit conducts automatic maintenance and repair and can execute meaningful causal actions in error situations.
Monit Features
* Daemon mode - poll programs at a specified interval
* Monitoring modes - active, passive or manual
* Start, stop and restart of programs
* Group and manage groups of programs
* Process dependency definition
* Logging to syslog or own logfile
* Configuration - comprehensive controlfile
* Runtime and TCP/IP port checking (tcp and udp)
* SSL support for port checking
* Unix domain socket checking
* Process status and process timeout
* Process cpu usage
* Process memory usage
* Process zombie check
* Check the systems load average
* Check a file or directory timestamp
* Alert, stop or restart a process based on its characteristics
* MD5 checksum for programs started and stopped by monit
* Alert notification for program timeout, restart, checksum, stop resource and timestamp error
* Flexible and customizable email alert messages
* Protocol verification. HTTP, FTP, SMTP, POP, IMAP, NNTP, SSH, DWP,LDAPv2 and LDAPv3
* An http interface with optional SSL support to make monit accessible from a webbrowser
Install Monit in Ubuntu
sudo apt-get install monit
This will complete the installation.
Configuring Monit
Default configuration file located at /etc/monit/monitrc you need to edit this file to configure your options
sudo vi /etc/monit/monitrc
Sample Configuration file as follows and uncomment all the following options
## Start monit in background (run as daemon) and check the services at 2-minute
## intervals.
#
set daemon 120
## Set syslog logging with the 'daemon' facility. If the FACILITY option is
## omited, monit will use 'user' facility by default. You can specify the
## path to the file for monit native logging.
#
set logfile syslog facility log_daemon
## Set list of mailservers for alert delivery. Multiple servers may be
## specified using comma separator. By default monit uses port 25 - it is
## possible to override it with the PORT option.
#
set mailserver localhost # primary mailserver
## Monit by default uses the following alert mail format:
From: monit@$HOST # sender
Subject: monit alert -- $EVENT $SERVICE # subject
$EVENT Service $SERVICE
Date: $DATE
Action: $ACTION
Host: $HOST # body
Description: $DESCRIPTION
Your faithful,
monit
## You can override the alert message format or its parts such as subject
## or sender using the MAIL-FORMAT statement. Macros such as $DATE, etc.
## are expanded on runtime. For example to override the sender:
#
set mail-format { from: monit@monitorserver.com }
## Monit has an embedded webserver, which can be used to view the
## configuration, actual services parameters or manage the services using the
## web interface.
#
set httpd port 2812 and
use address localhost # only accept connection from localhost
allow localhost # allow localhost to connect to the server and
allow 172.29.5.0/255.255.255.0
allow admin:monit # require user 'admin' with password 'monit'
===> Change 172.29.5.0/255.255.255.0 to your network ip range
# Monitoring the apache2 web services.
# It will check process apache2 with given pid file.
# If process name or pidfile path is wrong then monit will
# give the error of failed. tough apache2 is running.
check process apache2 with pidfile /var/run/apache2.pid
#Below is actions taken by monit when service got stuck.
start program = "/etc/init.d/apache2 start"
stop program = "/etc/init.d/apache2 stop"
# Admin will notify by mail if below of the condition satisfied.
if cpu is greater than 60% for 2 cycles then alert
if cpu > 80% for 5 cycles then restart
if totalmem > 200.0 MB for 5 cycles then restart
if children > 250 then restart
if loadavg(5min) greater than 10 for 8 cycles then stop
if 3 restarts within 5 cycles then timeout
group server
#Monitoring Mysql Service
check process mysql with pidfile /var/run/mysqld/mysqld.pid
group database
start program = "/etc/init.d/mysql start"
stop program = "/etc/init.d/mysql stop"
if failed host 127.0.0.1 port 3306 then restart
if 5 restarts within 5 cycles then timeout
#Monitoring ssh Service
check process sshd with pidfile /var/run/sshd.pid
start program "/etc/init.d/ssh start"
stop program "/etc/init.d/ssh stop"
if failed port 22 protocol ssh then restart
if 5 restarts within 5 cycles then timeout
You can also include other configuration files via include directives:
include /etc/monit/default.monitrc
include /etc/monit/mysql.monitrc
This is only sample configuration file. The configuration file is pretty self-explaining; if you are unsure about an option, take a look at the monit documentation
After configuring your monit file you can check the configuration file syntax using the following command
sudo monit -t
Once you don't have any syntax errors you need to enable this service by changing the file /etc/default/monit
sudo vi /etc/default/monit
# You must set this variable to for monit to start
startup=0
to
# You must set this variable to for monit to start
startup=1
Now you need to start the service using the following command
sudo /etc/init.d/monit start
Monit Web interface
Monit Web interface will run on the port number 2812.If you have any firewall in your network setup you need to enable this port.
Now point your browser to http://yourserverip:2812/ (make sure port 2812 isn't blocked by your firewall), log in with admin and monit.If you want a secure login you can use https check here
Once it opens you should see the following screen

Here you need to enter the username and password

Once it opens you should see the following screen with all the services we are monitoring

Apache web server process details

You can start,stop,restart and disable this service from web interface you can see this in the following screen

ProFTPD is a proven, high-performance, scalable FTP server written from scratch, with a focus toward simplicity, security, and ease of configuration. Naturally, ProFTPD powers some of the largest sites on the Internet. It features a very Apache-like configuration syntax, modules, and a highly customizable server infrastructure, including support for multiple ‘virtual’ FTP servers, anonymous FTP, and permission-based directory visibility.
phpftpwho is a program written in PHP that tells you the status of your local FTP server. It uses the unix/linux command ftpwho and formats and displays the information. The program is licensed under the GPL license.
phpftpwho Requirements
A webserver, Apache is a great one.
A recent version of PHP.
The FTP server Proftpd.
A Unix/Linux operating system.
Install Apache Webserver with PHP Support
If you want to install Apache Webserver with PHP Support check here
Install Proftpd Server
If you want to Install Proftpd Server check here
Install phpftpwho
Note :- phpftpwho must be installed on the same machine that is running Proftpd server.
Download phpftpwho from here using the following command in apache web server root document folder (/var/www)
#wget http://www.rivetcode.com/files/phpftpwho/phpftpwho-0_9.tar.gz
Now you have tar.gz file you need to extract using the following command
tar xzvf phpftpwho-0_9.tar.gz
Now you should be having phpftpwho folder in your apache root document folder(/var/www)
If you want to access your phpftpwho program you need to go to http://yourserverip/phpftpwho
Now you need to login into the ftp server and refresh your phpftpwho page you should see similar to the following screen

Security configuration
If you want to configure security for phpftpwho you need to create a .htaccess file under phpftpwho folder in /var/www/ so that any one who is trying to access this page it will prompt for username and password.
Tags: configuring phpftpwho, monito proftp server, monitor ftp server, phpftpwho in debianconfiguring phpftpwho, monito proftp server, monitor ftp server, phpftpwho in debian
Debian: Debian Admin Step By Step Tutorials and articles with screenshots
opensource: del.icio.us tag/opensource
Server
sysadmin
monitor
performance
tools
opensource
utilities