Friday was spent at the client’s delivering the final beta of the first phase of a five-phase LAMP (Linux-Apache-MySQL=PHP) project. Client was ecstatic! But, of course, I came home with a list of small adjustments to punch through. Hope to tell more as it unfolds. Briefly, it’s a simple data entry and reporting system: 20 tables, 40 web pages, used by an inhouse staff to manage their workflow. This first piece got rid of the worst of their manual labors. Later phases will produce documents to present in a customer-facing web site, and tighten up the workflow tracking. Phase I was 40 hours of analysis and design with customer interviews, document review and resulted in a design document of workflow, prototyped web forms and an ERD (data model). The model was dead-on, requiring just a couple adjustments. Eighty hours of coding produced the forms and got us through the beta testing and demonstrations. Client goes live with a pilot test next week.
Tag Archives | MySQL
MySQL Launches MySQL Network
Latest Updates from MySQL AB, the PR department for MySQL AB via RSS announces: MySQL Launches ‘MySQL Network’ for Corporate Enterprises Looking to Fast-Track Open Source Database Deployment. Boston, LinuxWorld Conference & Expo — “MySQL AB, developer of the world’s most popular open source database, today launched a new way for corporate enterprises to acquire, deploy and support MySQL for their business-critical applications.
The new ‘MySQL Network’ offering is specifically designed for large IT departments looking to leverage the cost and performance benefits of MySQL — while addressing key business requirements for implementing open source software.”
Anyone up for a game of Buzzterm Bingo? Sheesh.
MySQL on Windows under attack
If you’re running a MySQL server on Windows, ensure that you have a rock-solid, hard-to-crack root password or, smarter yet, turn off remote root access. The Internet Storm Center logs a nasty bot that’s taking over Windows machines (an easy task, let’s admit it) using MySQL servers with weak root passwords.
Like any application exposed to the internet, it’s wise to disable the standard built-in user name and/or beef up the passwords to ones very difficult to crack.
Webmin releases version 1.180
A new version released today. Webmin is a great tool for administering a Linux, OS X or Windows (with Cygwin) machine remotely via a web browser. Based in Perl, it includes modules for many of the popular tools on the platforms: Apache, IPTables, Samba, MySQL, PostGreSQL. It’s a very handy way to familiarize yourself with the administrative options available with those tools, and often offers a simpler and easy to use interface than the tool itself does.
PostGreSQL 8.0 Released
PostGreSQL 8.0 is a pretty impressive product that doesn’t get the attention of MySQL, but really should. It’s a full-featured relational database engine with most of the competitive features of the big boys: triggers, RI, procedures, etc. In the 8.0 product, the press release claims the most features in any dot-zero release of PostGreSQL. Notable is a native Windows port for better introduction into monoculture shops.
Building your Linux apps from source, part 2
When you build apps from source, you get to configure, tune and install them just the way you want. But with great power comes great responsibility, right? Now that you have taken control, you are responsible for maintaining the applications as well. No distribution package manager is going to automatically try to update files you created yourself — you have to do it. For that reason, stick with the package manager’s version when you can. Make sure to sign up for the product’s mailing lists or announcements as well as the general security mailings lists so you’ll know when an update is needed.
Leave adequate time to do the install and configure, especially if it is a complex product or you’re not familiar with all of the steps. I mean, how hard can “./configure;make;make install” be, right? Figure two weeks for your first attempt, and maybe an hour or two after that. Okay, two weeks may be a little high, but it never hurts to score some points by coming in under your estimate, right? Start with a few little and non-critical items and build up your debugging and troubleshooting skills. Keep resources like your local Linux User Group and product’s mailing lists and Google handy.
Configure doesn’t always tell you if it doesn’t recognize the parameters you pass. I spent days trying to add the mysqli module to PHP version 4.3.10 before I finally realized that I could issue a ./configure –help and have it tell me there was no such option. Doh.
Patience, grasshopper.
Building your Linux apps from source
The idea of building applications from source is foreign to Windows and commercial software users, but it is really not as scary as it sounds. Recently, I was called upon to install and configure Apache, MySQl and PHP on a client’s RedHat 9 installation. They were keeping their Redhat 9 machine up to date using the yum legacy program, but the legacy repositories are not always up on the latest editions. After all, volunteers maintain these, too.
As the client’s requirements included a need for transactions, the InnoDb database engine was a good choice. PHP supports a new MySQL interface in PHP 5.0.3 which takes full advantage of the new features in MySQL 4.1.x, so I chose to build Apache, MySQL and PHP from source. A little Googling came across several useful sites, where other developers had posted the commands they used to do this. Two I found especially useful:
- http://dan.drydog.com/apache2php.html
- http://hulan.info/blog/item/compile-from-source-apache-2-0-52-with-ssl-php-5-0-2-and-mysql-4-1-6-on-linux
Building from source involves a few steps:
- Download the source, typically from the main project web site or a trusted mirror. A good place to store all the files is /usr/local/src.
- Unpack the files into their own directories, typically with tar -zxvf for a tar.gz (“tarball”).
- Hop into that directory and take a quick read through INSTALL, README, LICENSE and CONFIGURE files to see if there are any gotchas.
- Build the script that does the compile (a “makefile”) with ./configure. If you followed the links above, you can see ./configure may have many options. Adding –help after ./configure will list them, and a little research can tell you the ones you want. If you get errors during this step, it’s back to the forums, Google or the instructions to determin if there’s more you need to do.
- Now that you’ve created the makefile, you invoke it with the command ‘make.’
- Install your application with ‘make install.’
It still sounds like a chore, but the end result is a working application that you have tuned to your system and needs, up to date with the latest source you could obtain, and installed where you want.
NoSoftwarePatents.com
The web site of NoSoftwarePatents.com presents strong arguments why patents will badly damage the software industry. Copyrights are an appropriate mechanism to protect source code. Patents are for unique inventions, not the evolutionary progress that characterizes the progress of software.
Slashdot highlights the appeal from three of the key leaders of the Free and Open Software movement: Linus Torvalds of Linux, Monty Widenius of MySQL and Rasmus Lerdorf of PHP. Patents prevent progress.
MySQL 4.1 released as production-ready
MySQL Version 4.1 Certified as Production-Ready. “MySQL announced the general availability of MySQL 4.1. Certified by the company as production-ready for large-scale enterprise deployment, this significant upgrade to the MySQL database server features advanced querying capabilities through subqueries, faster and more secure client-server communication, new installation and configuration tools, and support for international character sets and geographic data.”
Posted from OSNews
Handy free reference cards for XML, XSL, emacs, Apache, MySQL and more…
[Andrew MacNeill – AKSEL Solutions] blogs “The Furrygoat Experience – Reference Cards. Steve Makofsky referenced this great reference cards site earlier last week. The XML and XSL stuff is very handy.” There’s also links for emacs, Apache 1.3, MySQL and many others…