This is how you can backup you MySQL database(s) and stored procedures
# mysqldump --routines <dbname>
Or you can backup only the stored procedures
# mysqldump --no-create-db --no-create-info --no-data --routines <dbname>
Tags: backup, howto, MySQL, stored functions
Posted by Hans-Henry Jakobsen
The substr_count function in PHP counts the number of substring occurrences. This post describes how to create a mysql stored function to behave just like PHP’s substr_count function.
This function can be created from your mysql console
delimiter || DROP FUNCTION IF EXISTS substrCount|| CREATE FUNCTION substrCount(s VARCHAR(255), ss VARCHAR(255)) RETURNS TINYINT(3) UNSIGNED LANGUAGE SQL NOT DETERMINISTIC READS SQL DATA BEGIN DECLARE count TINYINT(3) UNSIGNED; DECLARE offset TINYINT(3) UNSIGNED; DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET s = NULL; SET count = 0; SET offset = 1; REPEAT IF NOT ISNULL(s) AND offset > 0 THEN SET offset = LOCATE(ss, s, offset); IF offset > 0 THEN SET count = count + 1; SET offset = offset + 1; END IF; END IF; UNTIL ISNULL(s) OR offset = 0 END REPEAT; RETURN count; END; || delimiter ;
Usage
Example 1
SELECT substrCount('/this/is/a/path', '/') `count`;
`count` would return 4 in this case. Can be used in such cases where you might want to find the “depth” of a path, or for many other uses.
This function is great to count the content of mysql ENUM and SET field data types.
Example 2
SELECT substrcount(
`tablename` , ','
) as tablename
FROM `tablename`
where substrcount(
`tablename` , ','
);
The content of table named tablename is a comma separated list generated from mysql ENUM datatype
2000/2001,2001/2002,2002/2003,2003/2004,2004/2005,2005/2006,2006/2007,2007/2008,2008/2009,2009/2010
In Example 2 the result from this query would be 9, telling us that there are 9 commas in this tablerow.
Source: Posted by Andrew Hanna on August 24 2006 8:04pm
Tags: howto, MySQL, PHP, stored functions
Posted by Hans-Henry Jakobsen
This is a short post that describes how to prepare your USB memory stick for a base installation of Debian Lenny. This will most likely also work on Debian based distributions like Ubuntu.
Download the latest Debian boot.img.gz file
# wget http://people.debian.org/~joeyh/d-i/images/daily/hd-media/boot.img.gz
Download the latest Debian netinst ISO image
# wget http://cdimage.debian.org/cdimage/daily-builds/daily/arch-latest/i386/iso-cd/debian-testing-i386-netinst.iso
Connect the USB stick in the computer and verify that the drive is recognized in /var/log/messages.
It is now time to write the downloaded files onto your USB stick.
First write the boot information to the stick
# zcat boot.img.gz > /dev/sdb
I am assuming that /dev/sdb is the memory stick. Always check that you are writing to the right device!
Mount the USB stick and copy the installation files from the ISO image
# mount /dev/sdb /media/memstick # cp debian-testing-i386-netinst.iso /media/memstick
The USB stick is now ready to be used as a boot media just like a CDROM.
Tags: Debian, howto, memory stick, Ubuntu
Posted by Hans-Henry Jakobsen
This is how you can combine (or concatenate) data from two table columns into one column using a mysql SQL query.
SELECT CONCAT(firstname,lastname) AS 'name' FROM tablename
The result would be “firstname lastname”
If you would like to insert this data into a new column
INSERT INTO tablename (full_name) SELECT CONCAT(firstname,lastname) AS 'name' FROM tablename
Posted by Hans-Henry Jakobsen
This post describes howto decompose a SWF Flash-file using linux and a program named swfextract. The post came to life because I had to do some changes to one of my flash presentations but I had deleted all the source files. After searching the Internet i doscovered swfextract.
SWF Tools is a collection of SWF (Flash) manipulation and creation utilities like pdf2swf, jpeg2swf, png2swf, gif2swf, font2swf, wav2swf, swfcombine, swfdump, swfstrings, swfbbox and swfc. But I’m only going to use swfextract in this post.
If you don’t have it installed on your system, download it and install the deb-package
# wget http://http.us.debian.org/debian/pool/main/s/swftools/swftools_0.8.1-2.1_i386.deb # dpkg -i swftools_0.8.1-2.1_i386.deb
The swftools package depends on several packages like libgif4 libt1-5 and they should be installed before swftools
# aptitude install libgif4 libt1-5
I was interested in extracting the image files in my Flash presentation and did the following to determine what was in the presentation file
# swfextract flashfile.swf Objects in file flashfile.swf: [-i] 5 Shapes: ID(s) 1, 3, 5, 7, 9 [-j] 4 JPEGs: ID(s) 2, 6, 8, 10 [-f] 1 Frame: ID(s) 0
As we see above there are 4 JPEG-files I'm interested in extracting and their IDs.
I did the following to extract the image files
# swfextract -i 2 -j 2,6,8,10 flashfile.swf
Result files
output.swf pic10.jpg pic2.jpg pic6.jpg pic8.jpg
If you don't use the -i switch you will end up with only one output.jpg file.
You are now ready to recreate the Flash presentation using the extracted image files.
Source
http://www.swftools.org
SWF Tools
Tags: adobe, decompose, extract, Flash, howto, SWF, swfextract
Posted by Hans-Henry Jakobsen