After much experimentation, we found the right combination of configure options to get MySQL and Perl DBD::mysql to work correctly on a Red Hat Enterprise 3 box. We were getting some segmentation faults on the binary after switching to a custom kernel. It appears that BIND and MySQL, and probably other apps, are relying on […]
Compiling MySQL 4.1 for Perl DBD Support
Determining Your MDAC Version
Microsoft has a tool called the Data Access Component Checker that will determine the version of MDAC running on your system. It is a simple application that will display a dialog like this when run: For more information on the Microsoft Data Access Component checker, see this page.
Installing the MySQL ODBC Client
If you would like to communicate with MySQL via ODBC, grab the connector from here. The installation is quite straightforward. When you run the install application, read the warning and click next: Accept the license agreement if you wish to continue: Make sure you have uninstalled any existing MySQL ODBC driver. If you have, click […]
Configuring the MySQL ODBC Connector
In this article we installed the MySQL ODBC Connector. Now, let’s configure the connector. We are configuring this on a Windows XP machine. Find the Data Sources (ODBC) configation tool. On XP this is in Administrative Tools: In the ODBC Data Source Administrator, click add: Select the MySQL ODBC Driver and click Finish: You should […]
Showing All Grants With MySQL
Users are identified with both a user and a host. If you want to show all of the grants for all users, you need to first look at the mysql.user table: [usr-1@srv-1 ~]$ mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is […]
Removing Grants in MySQL
Grants are how MySQL handles user permissions to databases. See our article here for information on showing the grants. To delete grants, you can directly modify the mysql.user table: mysql> select User,Host from mysql.user; +——+—————————+ | User | Host | +——+—————————+ | are | 10.10.10.10 | | are | 10.10.10.11 | | are | 10.50.100.0/255.255.255.0 […]
Granting Access to Users With MySQL
To grant access to a database for a particular user and subnet, you can use this command: mysql> grant all privileges on arewedown.* to are@’10.50.100.0/255.255.255.0′ identified by ‘arepass’; Query OK, 0 rows affected (0.00 sec) mysql> FLUSH PRIVILEGES; Query OK, 0 rows affected (0.01 sec) mysql> select User,Host from mysql.user; +——+—————————+ | User | Host […]
Inserting MySQL Records Via ODBC With Visual Basic .NET
We tried a bunch of different methods to try and access a MySQL database via ODBC for our AreWeDown service. The code below is available here in a fully functioning application that starts as a service. The most reliable method we found to connect to MySQL databases from Windows clients via a VB app appears […]
How to Capture Errors With PHP MySQL Queries
To capture the error of a PHP query against a MySQL database, use this syntax: $result=mysql_query($query); if (!$result) { die(‘Invalid query: ‘ . mysql_error()); }
Securing phpMyAdmin
phpMyAdmin is a web-based tool for managing MySQL databases. The installation mainly consists of extracting the distribution and editing the database authentication information. In this article we will secure phpMyAdmin using a change of the directory name and a .htaccess file. First off, let’s extract the package: [root@srv-5 webroot]# ls php* phpMyAdmin-2.6.4-pl3.tar.bz2 [root@srv-5 webroot]# tar […]
Listing Available MySQL Databases and Tables
To determine what databases and tables are stored in your MySQL database, log in using the mysql client: [usr-1@srv-1 ~]$ mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 6 to server version: 4.1.12 Type ‘help;’ or ‘\h’ for help. Type ‘\c’ […]
SQLite Autoincrement
An autoincrement field is already included with SQLite. Select ROWID from a table to get the unique row identification. Here is some REALBasic code that selects the ROWID along with the other columns in the table and displays it in a ListBox: UtilSet.LBAP.DeleteAllRows db= New REALSQLdatabase dbFile = GetFolderItem(“mcj.rsd”) db.DatabaseFile=dbFile If db.Connect() then rs = […]
Dumping SQLite Table Structure
SQLite is a small, embeddable SQL database engine. Its licensing allows it to be included in commercial products and modified without publishing the source code. REALbasic uses SQLite as its included database engine. REALbasic has a query tool; however, it is nice to have the full-blown sqlite client. Let’s download the tarball and configure, compile, […]
Using MCJ to Practice SQL Commands – Part 1 – Initial Startup
Mountain Climbing Journal (MCJ) is a journal application that includes a SQL Tool to query the database using an embedded SQLite database engine. MCJ is a single executable. In this example we are using the GNU/Linux version, but there are versions for Microsoft Windows and Mac OS X as well: [usr-1@sv-1 sqlart]$ ls mcjl [usr-1@sv-1 […]
Using MCJ to Practice SQL Commands – Part 2 – Creating Some Records
Mountain Climbing Journal (MCJ) is a journal application that includes a SQL Tool to query the database using an embedded SQLite database engine. In Part 1 we created an initial database. Now, let’s add some records. The empty cup-like icon that is yellow, below, is what is used to add a blank record. It turns […]
Using MCJ to Practice SQL Commands – Part 3 – Some Queries
Mountain Climbing Journal (MCJ) is a journal application that includes a SQL Tool to query the database using an embedded SQLite database engine. In Part 2 we created some records. Now, let’s do some queries. Our first query will be to select all fields in all records in the journal table: select * from journal […]
Importing a CSV file to a SQLite Database
SQLite has a build in import command for importing records from text files. We used a tab for a field separator: $ sqlite3 database.db SQLite version 3.1.3 Enter “.help” for instructions sqlite> .separator “\t” Now that we have set our field separator, we can import: sqlite> .import ex.txt tablename sqlite>
Setting MySQL System Variables on the Fly
Many MySQL system variables can be set on the fly at the command line, without restarting the server. This is a great thing at times, like when that new code which was so thoroughly “tested” winds up consuming five times the database connections as the old version. Oops! Well, within the limits of the resources […]
Updating Tables with SQL
As we mentioned in Using MCJ to Practice SQL Commands, the MCJ has the ability to run queries directly. We had a bunch of configuration and compile options that now should run with type for the build tab2. We can change all of the chroot types to prechroot with the SQL command: update journal set […]
UNIX and Outlook Express Interoperability
The MIME on Outlook Express seems to be broken. We have seen several instances where Outlook Express users cannot read Email sent by UNIX Email clients. The message is garbled with lots of question marks and other random characters. We have had this problem here at netadmintools.com, since we use Linux Office Suite 99 for […]