Welcome!

Linux Containers Authors: Liz McMillan, Vaibhaw Pandey, Elizabeth White, Pat Romanski, Yeshim Deniz

Related Topics: Linux Containers

Linux Containers: Article

Making MySQL, ODBC & OpenOffice 1.0 work together, Part 2

25-gazillion easy steps to making mailmerge work with OpenOffice & MySQL

(LinuxWorld) — The forum postings on last week's column about the installation of MySQL and ODBC to gain access to the secret power of OpenOffice.org 1.0 were a mixed bag: some good, some bad, some "so what." I was variously described as an stupid, foolish, an incompetent sysadmin and a writer of more fiction than fact.

I'll come clean about one thing: I am an incompetent sysadmin, and I have a failing score on the first LPI exam to prove it. But then so are most small businesspeople in the SOHO market. That makes my experiences a more-valuable litmus test for SOHO users than those of some yahoo guru running gentoo.

If you dismiss the name-calling and those who suggest switching to their distribution of choice in order to tame the problem, some valuable information remains to be gleaned. Among other things, I found a better, cleaner and "distribution-pure" installation method for Red Hat 8.0. It has only a couple of gotchas. Regardless of the distribution you're using, you might find help for how to get MySQL/ODBC installed and working with OpenOffice.org scattered in that forum.

If you're running Red Hat 8.0, the steps I followed might work for you. They are:

  1. up2date mysql mysql-server and mysql-devel
  2. /usr/bin/mysql_install_db
  3. chown -R mysql.mysql /var/lib/mysql
  4. chmod -R 666 /var/lib/mysql
  5. /usr/bin/safe_mysql -u mysql &
  6. up2date unixODBC unixODBC-devel
  7. up2date --src MyODBC
  8. rpmbuild --rebuild /var/spool/up2date/MyODBC-2.50.39-7.src.rpm
  9. rpm -Uvh --force /usr/src/redhat/RPMS/i386/MyODBC-2.50.39-7.i386.rpm
  10. Edit /etc/odbc.ini and /etc/odbcinst.ini

For whatever reasons, whenever I tried it with all the packages listed in a single up2date, it didn't work. It may have been the way I was holding my mouth, or I might not have sanitized my system completely from one of the previous failed installations. Or possibly up2date doesn't handle things correctly when there are too many packages under the tree. Hopefully it will work for you, too. As was explained in the forum, the reason for having to rebuild MyODBC is that the latest binary RPM for MyODBC does not yet match changes made in unixODBC for security problems.

There were also complaints about my suggesting a conflict of interest at MySQL AB between making money and making MySQL easy to install and configure. I would like to clarify my position. I did not say MySQL AB was failing to document MySQL more adequately in order to make more money selling support. What I said was that there is a conflict between the goals of the business and free software. It may or may not influence behavior, but it certainly exists. The goal of a business is to make money. The larger the market, the more money that can be made. Writing better documentation might very well shrink the market interested in MySQL AB products and services.

Moving right along

Enough of what happened last week. This week is all about actually using the MySQL/OpenOffice connection, not cussing while installing it or fussing about the best way to do it. For my test, I decided to do something that I had done circa 1995/1996 using both MS Access and the Lotus Approach — that being to create a table of newsletter subscribers and to use it to a mailmerge.

OpenOffice.org provides an easy-to-use tool for designing database tables. Clicking on View->DataSources brings up the Data Explorer, which lets you view and work with links, queries and tables in your data sources. I clicked on the MySQL-test data source to expand it, then selected tables and clicked the plus sign. Then a right-click on tables produced the Table Design window you see below. A couple of minutes later, I had a simple name and address table for newsletter subscriptions.

OpenOffice Table Design window
Editor's note: The above image is reduced in size to allow it to display on this page. Click on this image to see the original.

Now on to the heart of the matter: printing address labels from the table just created. I admit to getting stuck on this step for more than a full day. Relying primarily on the Help system, I followed the steps outlined but had no success. In addition to the steps being anti-intuitive, they also have the disadvantage of just not working. The best I could with them was to print every other label. I know, I know. You can say the glass is half-empty or half-full. But I wanted them all.

I asked for help using IRC in both the #openoffice.org and the #mysql channels on irc.freenode.net. But there was no help. Not even a suggestion. I Googled and read search results, but I couldn't find a mention of this problem (or even a similar one). Worse, I didn't know if I was dealing with a MySQL problem, an ODBC problem or an OpenOffice.org problem.

Finally, I joined OpenOffice.org so that I could search existing bugs. They track issues, not bugs, but it didn't help. Finally I decided to search the users mailing list archive. When I did, the problem became as plain as the nose on my face. The problem is that the Help system docs are wrong. Period. They don't work.

Success? Success!

I did find instructions there that work. I want to mention a small "gotcha" before proceeding. When I first began trying to print the address labels, I got a MySQL error message for "Too many connections." I learned that each label on the page requires a connection of its own. I did two things to resolve the problem. It's possible that only one of them was required. First, I added this line to the mysqld section of /etc/my.cnf:

set-variable = max_connections=200

After killing the running processes, I did an su mysql before restarting.0 I had found a note in a Google search from a MySQL developer who suggested not starting mysqld as root might solve the "Too many connections" problem. I restarted as user mysql instead of root passing a user argument on the command line. After the changes, database access worked. More experimentation is required to figure out which one actually cured the ill.

Here are the instructions on how to print the labels.

  1. Choose File->New->Labels
  2. Select the Labels tab and pick the columns from the table you want printed on the label, left to right, line by line. Be sure to enter space between adjacent columns on the same line and to press Enter to continue on a new line.
  3. Select the Format tab and define the way you want the labels to print: the size, margins and number of columns and rows you want per page.
  4. Select the Options tab and unselect Synchronize
  5. Click on New Document
  6. Press F4 to select the data source
  7. Select the rows from the table that you want included by clicking on the button to the left of the leftmost column of the table display. Use the Shift and CTL keys as you normally do for selecting multiple items.
  8. Click on the "Data to Fields" icon on the database toolbar. Just to the left of this icon is a very similar one. You want the one on the right, which is immediately adjacent to the Form Letter icon. When you click it, the document fields will be populated from the database.
  9. Click on the Form Letter icon and follow the dialog to print the labels.

Final impressions? OpenOffice.org is more sophisticated and powerful than I realized. It can be made to work with various database-management systems, and it can do the mailmerge functions required by many SOHO types. Ease of use is not up to what I remember with either Access or Approach six or seven years ago, but I'm sure that it will continue to improve in that regard. The good news to me is that Linux is making strong strides not just in the enterprise, and not just on the desktop, but in a place where it seems to lag most of all: the SOHO market.

If you need database access and manipulation for your SOHO office environment, I would not recommend an immediate switch to OpenOffice.org. I would very strongly recommend that you begin beta tests of it — perhaps with more than one DBMS — to see if it meets your needs. Exercise it fully. You don't want to get to the tail-end of an implementation only to find another "gotcha" that makes the whole thing unsuitable. As with all software, there are bound to be bugs in both the code and the documentation. I'll continue my own investigations and compare my experiences with both PostgreSLQ and the OpenOffice.org default, dBase.

More Stories By Joe Barr

Joe Barr is a freelance journalist covering Linux, open source and network security. His 'Version Control' column has been a regular feature of Linux.SYS-CON.com since its inception. As far as we know, he is the only living journalist whose works have appeared both in phrack, the legendary underground zine, and IBM Personal Systems Magazine.

Comments (6) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Most Recent Comments
lawrence harriott 02/24/05 09:58:59 AM EST

Oh, I am using Mandrake 10.1, OOo1.1.4, MySQL3.51. I installed the unixODBC drivers that come with linux.

lawrence harriott 02/24/05 09:55:35 AM EST

This is one of the few places where success with OOo and MySQL have happened. After a sleepless week of working at this problem, with precious but little help I wound up here.

My problem is that from early on I have been able to create tables in MySQL using OOo but up to now cannot see any when I access my data sources. I connect to the database but the tables in there will not show up no matter what I do.
So far I have added myslef to the mysql group, made the test database permission read/write to all, checked the table with isql and mysql (it is there and I can do what i want with it).

If anyone had solved this problem please, please, let me know how to correct this.

Thanks
Lawrence

Leslie Viljoen 03/25/04 07:03:58 AM EST

I used this article to set up MySQL/OpenOffice connectivity under Mandrake 9.1 - in about 30 minutes.
I needed to urpmi unixODBC-gui-gtk and MySQL had already been installed earlier (but I hadn't done anything with it).
Apart from that I just put in the odbc.ini and odbcinst.ini lines and everything worked.

Thank-you for the tips!

Leslie

Muraille Paul 12/07/03 04:09:29 PM EST

Maybe a look at the Database FAQ (http://dba.openoffice.org/FAQ/FAQ.html#dataupdate)
might help you. There's one question that reads:
"I can access my tables with OOo, but I can't update or insert any data - the access seems to be read-only." However, it seems that it was written for OOo 1.0 and you may need more drilling (in the answer, they say there's a turnaround for 1.1 beta2 and they explain it on another page).
As to me, I have OOo 1.1 (French version), mySQL 4.0.15 (installed together with Apache, see EasyPHP 1.7) and I downloaded the mySQL ODBC component from mySQL AB available on the mySQL website. After configuring the ODBC driver through the control panel, I ran OOo, then configured a datasource for a local mySQL database named 'test' as the 'root' user and everything was ok. So if you haven't done so yet, test your connection as the 'root' user. If it works, your problem may be a user's read/write problem as explained in the FAQ.

Hope this helps,

Paul

Joel Stone 10/27/03 07:42:42 PM EST

Gosh, I wouldn't have a clue about how to make any of that work on windoze, sounds like quite a mess... would yu be willing to consider the linux OS? Perhaps use crossover office to operate the handful of pesky legacy windoze apps for now?

Mike Darrett 10/27/03 12:21:58 PM EST

Hello,

I'm trying to run OpenOffice.org 1.1 with MySQL on Windows 98. (Yes yes I know, but some things like eBay's Mister Lister, not to mention TaxCut, only work on Windows.)

I've followed the McCreesh article, and cannot enter data into a newly-made table. (I've installed MyODBC instead of unixODBC.) I can create a new table, but I can't seem to edit the table at all; all record options are grayed out.

Any suggestions?

Thanks

Mike

@ThingsExpo Stories
"Akvelon is a software development company and we also provide consultancy services to folks who are looking to scale or accelerate their engineering roadmaps," explained Jeremiah Mothersell, Marketing Manager at Akvelon, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
In his session at 21st Cloud Expo, Carl J. Levine, Senior Technical Evangelist for NS1, will objectively discuss how DNS is used to solve Digital Transformation challenges in large SaaS applications, CDNs, AdTech platforms, and other demanding use cases. Carl J. Levine is the Senior Technical Evangelist for NS1. A veteran of the Internet Infrastructure space, he has over a decade of experience with startups, networking protocols and Internet infrastructure, combined with the unique ability to it...
"Space Monkey by Vivent Smart Home is a product that is a distributed cloud-based edge storage network. Vivent Smart Home, our parent company, is a smart home provider that places a lot of hard drives across homes in North America," explained JT Olds, Director of Engineering, and Brandon Crowfeather, Product Manager, at Vivint Smart Home, in this SYS-CON.tv interview at @ThingsExpo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
Gemini is Yahoo’s native and search advertising platform. To ensure the quality of a complex distributed system that spans multiple products and components and across various desktop websites and mobile app and web experiences – both Yahoo owned and operated and third-party syndication (supply), with complex interaction with more than a billion users and numerous advertisers globally (demand) – it becomes imperative to automate a set of end-to-end tests 24x7 to detect bugs and regression. In th...
"IBM is really all in on blockchain. We take a look at sort of the history of blockchain ledger technologies. It started out with bitcoin, Ethereum, and IBM evaluated these particular blockchain technologies and found they were anonymous and permissionless and that many companies were looking for permissioned blockchain," stated René Bostic, Technical VP of the IBM Cloud Unit in North America, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Conventi...
Large industrial manufacturing organizations are adopting the agile principles of cloud software companies. The industrial manufacturing development process has not scaled over time. Now that design CAD teams are geographically distributed, centralizing their work is key. With large multi-gigabyte projects, outdated tools have stifled industrial team agility, time-to-market milestones, and impacted P&L stakeholders.
"Cloud Academy is an enterprise training platform for the cloud, specifically public clouds. We offer guided learning experiences on AWS, Azure, Google Cloud and all the surrounding methodologies and technologies that you need to know and your teams need to know in order to leverage the full benefits of the cloud," explained Alex Brower, VP of Marketing at Cloud Academy, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clar...
Widespread fragmentation is stalling the growth of the IIoT and making it difficult for partners to work together. The number of software platforms, apps, hardware and connectivity standards is creating paralysis among businesses that are afraid of being locked into a solution. EdgeX Foundry is unifying the community around a common IoT edge framework and an ecosystem of interoperable components.
"MobiDev is a software development company and we do complex, custom software development for everybody from entrepreneurs to large enterprises," explained Alan Winters, U.S. Head of Business Development at MobiDev, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
Coca-Cola’s Google powered digital signage system lays the groundwork for a more valuable connection between Coke and its customers. Digital signs pair software with high-resolution displays so that a message can be changed instantly based on what the operator wants to communicate or sell. In their Day 3 Keynote at 21st Cloud Expo, Greg Chambers, Global Group Director, Digital Innovation, Coca-Cola, and Vidya Nagarajan, a Senior Product Manager at Google, discussed how from store operations and ...
"There's plenty of bandwidth out there but it's never in the right place. So what Cedexis does is uses data to work out the best pathways to get data from the origin to the person who wants to get it," explained Simon Jones, Evangelist and Head of Marketing at Cedexis, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
SYS-CON Events announced today that CrowdReviews.com has been named “Media Sponsor” of SYS-CON's 22nd International Cloud Expo, which will take place on June 5–7, 2018, at the Javits Center in New York City, NY. CrowdReviews.com is a transparent online platform for determining which products and services are the best based on the opinion of the crowd. The crowd consists of Internet users that have experienced products and services first-hand and have an interest in letting other potential buye...
SYS-CON Events announced today that Telecom Reseller has been named “Media Sponsor” of SYS-CON's 22nd International Cloud Expo, which will take place on June 5-7, 2018, at the Javits Center in New York, NY. Telecom Reseller reports on Unified Communications, UCaaS, BPaaS for enterprise and SMBs. They report extensively on both customer premises based solutions such as IP-PBX as well as cloud based and hosted platforms.
It is of utmost importance for the future success of WebRTC to ensure that interoperability is operational between web browsers and any WebRTC-compliant client. To be guaranteed as operational and effective, interoperability must be tested extensively by establishing WebRTC data and media connections between different web browsers running on different devices and operating systems. In his session at WebRTC Summit at @ThingsExpo, Dr. Alex Gouaillard, CEO and Founder of CoSMo Software, presented ...
WebRTC is great technology to build your own communication tools. It will be even more exciting experience it with advanced devices, such as a 360 Camera, 360 microphone, and a depth sensor camera. In his session at @ThingsExpo, Masashi Ganeko, a manager at INFOCOM Corporation, introduced two experimental projects from his team and what they learned from them. "Shotoku Tamago" uses the robot audition software HARK to track speakers in 360 video of a remote party. "Virtual Teleport" uses a multip...
A strange thing is happening along the way to the Internet of Things, namely far too many devices to work with and manage. It has become clear that we'll need much higher efficiency user experiences that can allow us to more easily and scalably work with the thousands of devices that will soon be in each of our lives. Enter the conversational interface revolution, combining bots we can literally talk with, gesture to, and even direct with our thoughts, with embedded artificial intelligence, whic...
SYS-CON Events announced today that Evatronix will exhibit at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Evatronix SA offers comprehensive solutions in the design and implementation of electronic systems, in CAD / CAM deployment, and also is a designer and manufacturer of advanced 3D scanners for professional applications.
Leading companies, from the Global Fortune 500 to the smallest companies, are adopting hybrid cloud as the path to business advantage. Hybrid cloud depends on cloud services and on-premises infrastructure working in unison. Successful implementations require new levels of data mobility, enabled by an automated and seamless flow across on-premises and cloud resources. In his general session at 21st Cloud Expo, Greg Tevis, an IBM Storage Software Technical Strategist and Customer Solution Architec...
To get the most out of their data, successful companies are not focusing on queries and data lakes, they are actively integrating analytics into their operations with a data-first application development approach. Real-time adjustments to improve revenues, reduce costs, or mitigate risk rely on applications that minimize latency on a variety of data sources. In his session at @BigDataExpo, Jack Norris, Senior Vice President, Data and Applications at MapR Technologies, reviewed best practices to ...
An increasing number of companies are creating products that combine data with analytical capabilities. Running interactive queries on Big Data requires complex architectures to store and query data effectively, typically involving data streams, an choosing efficient file format/database and multiple independent systems that are tied together through custom-engineered pipelines. In his session at @BigDataExpo at @ThingsExpo, Tomer Levi, a senior software engineer at Intel’s Advanced Analytics gr...