We're becoming a serious MySQL resource, with many technical articles, examples, forum posts and blog entries answering those difficult-to-resolve issues you may have come across. You might like to bookmark (or link to) this page.
Eleven recent articles on MySQL ...
Flashbulb moments - facts that clarify the "what" and "how" of MySQL
Copying databases and tables
Saving a result set locally for use in a spreadsheet
Setting up and running master and slave servers (replication)
Finding Orphan (unconnected) records in a database
How to translate a requirement to a table design
Complex select example - UNION, HAVING, GROUP etc
Exact, like and fuzzy matching of criteria
A PHP tool for ad-hoc MySQL queries
Joining a table to itself
Summing or averaging a column for each unique value in another column
and some old favourites:
What to do when you have a running system and realise that the design needs an overhaul
The difference between a JOIN and a LEFT JOIN
Uploading, storing and retrieving images in a BLOG
Writing joins of more than two tables
How to design and implement a many-to-many mapping
When to break the rules of normalisation
The vital difference between "Empty" and "Don't Know"
Optimising Selects
Using old client programs (4.0 and prior) on new servers (4.1 and later)
Other MySQL nuggets (written 2005-12-03, updated 2006-06-09)
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articles
S159 - MySQL 5 and PHP 5 [104] mysql_connect or mysql_pconnect in PHP? - (2004-10-30)
[494] MySQL - a score of things to remember - (2005-11-12)
[1131] MySQL - Password security (authentication protocol) - (2007-04-02)
[1417] What software version do we teach? - (2007-10-31)
[1455] Connecting to MySQL 5 from PHP on Mac OSX Leopard - (2007-12-03)
[1754] Upgrade from PHP 4 to PHP 5 - the TRY issue - (2008-08-15)
[1766] Diagrams to show you how - Tomcat, Java, PHP - (2008-08-22)
[2172] PHP4 v PHP5 - Object Model Difference - (2009-05-11)
[3455] MySQL, MySQLi, PDO or something else - how best to talk to databases from PHP - (2011-09-24)
S157 - More MySQL commands [158] MySQL - LEFT JOIN and RIGHT JOIN, INNER JOIN and OUTER JOIN - (2004-12-20)
[159] MySQL - Optimising Selects - (2004-12-21)
[279] Getting a list of unique values from a MySQL column - (2005-04-14)
[449] Matching in MySQL - (2005-09-24)
[502] SELECT in MySQL - choosing the rows you want - (2005-11-22)
[513] MySQL - JOIN or WHERE to link tables correctly? - (2005-12-01)
[517] An occasional chance, and reducing data to manageable levels - (2005-12-04)
[567] Combining similar rows from a MySQL database select - (2006-01-17)
[572] Giving the researcher power over database analysis - (2006-01-22)
[581] Saving a MySQL query results to your local disc for Excel - (2006-01-29)
[591] Key facts - SQL and MySQL - (2006-02-04)
[673] Helicopter views and tartans - (2006-04-06)
[1213] MySQL - the order of clauses and the order of actions - (2007-06-01)
[1235] Outputting numbers as words - MySQL with Perl or PHP - (2007-06-17)
[1331] MySQL joins revisited - (2007-09-03)
[1574] Joining MySQL tables revisited - finding nonmatching records, etc - (2008-03-15)
[1735] Finding words and work boundaries (MySQL, Perl, PHP) - (2008-08-03)
[1904] Ruby, Perl, Linux, MySQL - some training notes - (2008-11-23)
[2110] MySQL - looking for records in one table that do NOT correspond to records in another table - (2009-03-31)
[2259] Grouping rows for a summary report - MySQL and PHP - (2009-06-27)
[2448] MySQL - efficiency and other topics - (2009-10-10)
[2643] Relating tables with joins in MySQL - (2010-02-21)
[2644] Counting rows in joined MySQL tables - (2010-02-22)
[2645] Optimising and caching your MySQL enquiries - (2010-02-22)
[2647] Removing duplicates from a MySQL table - (2010-02-22)
[3061] Databases - why data is split into separate tables, and how to join them - (2010-11-20)
[3270] SQL - Data v Metadata, and the various stages of data selection - (2011-04-29)
[4481] Extracting data from backups to restore selected rows from MySQL tables - (2015-05-01)
S154 - MySQL - Designing an SQL Database System [59] MySQL - Pivot tables - (2004-09-22)
[361] Binary Large Objects or bars - (2005-06-27)
[375] Oops - I got my initial database design wrong - (2005-07-12)
[666] Database design - get it right from first principles - (2006-04-02)
[918] Databases needn't be frightening, hard or expensive - (2006-11-08)
[937] Display an image from a MySQL database in a web page via PHP - (2006-11-22)
[945] Code quality counts - (2006-11-26)
[1423] MySQL - table design and initial testing example - (2007-11-06)
[1575] Database design for a shopping application (MySQL) - (2008-03-15)
[1771] More HowTo diagrams - MySQL, Tomcat and Java - (2008-08-24)
[2053] What a difference a MySQL Index made - (2009-02-25)
[2085] MySQL - licensing issues, even with using the name - (2009-03-16)
[2204] Images in a database? How big is a database? (MySQL) - (2009-05-28)
[2749] Delegate Question - defining MySQL table relationships as you create the tables - (2010-05-02)
[3361] Blowing our own trumpet - MySQL resources - (2011-07-18)
[3494] Databases - when to treat the rules as guidelines - (2011-10-23)
[4426] FileMaker Day to Unix Time conversion - (2015-02-15)
S153 - Sourcing, Running and Configuring MySQL [192] Current MySQL and PHP paths and upgrades - (2005-01-28)
[334] Symbolic links and hard links - (2005-06-02)
[489] Which MySQL server am I using? - (2005-11-07)
[535] MySQL permissions and privileges - (2005-12-20)
[907] Browser -> httpd -> Tomcat -> MySQL. Restarting. - (2006-10-28)
[1095] Apache httpd , browser, MySQL and MySQL client downloads - (2007-02-28)
[1123] mysqldump and mysqlrestore - (2007-03-30)
[1689] Some sideways thoughts on the news - (2008-06-27)
[1731] Apache httpd, MySQL, PHP - installation procedure - (2008-08-01)
[1935] Summary of MySQL installation on a Linux system - (2008-12-11)
[2209] Monitoring and Tuning your MySQL installation - (2009-05-31)
[2426] Which version of MySQL am I running? - (2009-09-26)
[2444] Potted MySQL installation - (2009-10-09)
[2445] Securing MySQL on a production server - (2009-10-09)
[2458] Cant connect to local MySQL server through socket /tmp/mysql.sock - (2009-10-17)
[4390] Checking MySQL database backups have worked (not failed) - (2015-01-10)
[4406] Fixing damaged MySQL tables - Error 1712 and Error 2013 - (2015-01-25)
[4487] Starting MySQL. ERROR! The server quit without updating PID file - how we fixed it. - (2015-05-06)
S152 - SQL Primer as Used in MySQL [270] NULL in MySQL - (2005-04-06)
[2240] How do I query a database (MySQL)? - (2009-06-15)
[3060] INSERT, DELETE, REPLACE and UPDATE - changing the content of SQL tables - (2010-11-19)
[4007] Which database should I use? MySQL v SQLite - (2013-02-16)
S151 - Introduction to SQL and MySQL [84] MySQL - nuggets - (2004-10-11)
[85] Present and future MySQL - (2004-10-12)
[175] Worthwhile - (2005-01-11)
[382] Central London Courses - Perl, PHP, Python, Tcl, MySQL - (2005-07-18)
[444] Database or Progamming - which to learn first? - (2005-09-13)
[691] Testing you Perl / PHP / MySQL / Tcl knowledge - (2006-04-19)
[924] The LAMP Cookbook - Linux, Apache, MySQL, PHP / Perl - (2006-11-13)
[2134] Oracle take over Sun who had taken over MySQL - (2009-04-21)
[2561] The future of MySQL - (2010-01-03)
[2567] Extra MySQL course dates (2 day course, UK) - (2010-01-08)
[2786] Factory methods and SqLite in use in a Python teaching example - (2010-05-29)
[3269] Files or Databases? MySQL, SQLite, or Oracle? - (2011-04-28)
[3928] Storing your intermediate data - what format should you you choose? - (2012-11-20)
P308 - Using SQL Databases from Perl [644] Using a MySQL database from Perl - (2006-03-13)
[975] Answering ALL the delegate's Perl questions - (2006-12-09)
[1224] Object Relation Mapping (ORM) - (2007-06-09)
[1885] Hiding a MySQL database behind a web page - (2008-11-15)
[2381] Checking the database connection manually - (2009-08-28)
[3099] Perl - database access - DBD, DBI and DBIx modules - (2010-12-22)
J811 - Java - JDBC - Relational Database Access [2154] Bean Classes in Java and Java Database Connections - (2009-05-02)
[2861] MySQL and Java - connectivity past, present, and future thoughts - (2010-07-09)
[3046] Java Beans, tag libraries and JSPs - what and why. - (2010-11-13)
H113 - Using MySQL Databases in PHP Pages [647] Checking for MySQL errors - (2006-03-15)
[723] Viewing images held in a MySQL database via PHP - (2006-05-17)
[915] Paging through hundreds of entries - (2006-11-05)
[947] What is an SQL injection attack? - (2006-11-27)
[1010] Dates, times, clickable diarys in PHP - (2006-12-28)
[1561] Uploading to a MySQL database through PHP - examples and common questions - (2008-03-02)
[1983] Keeping PHP code in database and running it - (2009-01-09)
[2071] Setting up a MySQL database from PHP - (2009-03-08)
[2320] Helping new arrivals find out about source code examples - (2009-08-03)
[2432] Using print_r in PHP to explore mysql database requests - (2009-10-01)
[2447] MySQL stored procedures / their use on the web from PHP - (2009-10-10)
[2628] An example of an injection attack using Javascript - (2010-02-08)
[3035] How to display information from a database within a web page - (2010-11-07)
[4378] What FGW passengers want to talk about / and PHP programming to find out - (2015-01-01)
[4483] Moving from mysql to mysqli - simple worked example - (2015-05-03)
Some other Articles
New RoadPassport office - a much improved systemOpen source questions? Anyone can ask.MySQL - an FAQCrazy Day-siesExciting futures - the Well House Manor projectDomain Forwarding - 2 ways of doing itDynamic Web presence - next generation web site