<b>让MySQL与OpenOffice共舞</b>[MySQL防范]
本文“<b>让MySQL与OpenOffice共舞</b>[MySQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
一年前,我成为了Linux用户的一员,但是多年利用Windows,让我认为Linux有的工具利用不很习惯.就拿数据库来说,在Windows下,开辟一些数据库驱动的网站大概小型管理系统时可以挑选利用Access.Access不但易于利用,并且非常便利.转到Linux上后,做一样事情时发现MySQL是一个不错的挑选,但其没有图形界面,利用起来不是很便利,于是但愿可以找到办理的筹划.经过一段时间的探访,终于找到了办理办法,即把MySQL和Openoffice结合利用.按照资料显示,实现MySQL和OpenOffice协同工作的办法有很多种,不过大都过于复杂,难于实现.在此我介绍两种安装和配置历程.
我利用的操作系统是Red Hat 8.0,一样的办法用于别的的发行版大概稍有差别.在安装配置历程中,需求MySQL和UnixODBC软件包(OpenOffice缺省情形下已经安装好了).这些软件包在Red Hat 8.0的光盘中都已经自带,但在我的测试中,利用安装盘的办法仿佛无法成功.
安装配置办法一
1.下载软件
所需求的软件包有:
mysql-3.23.55-pc-linux-i686.tar
MySQL-client-3.23.55-1.i386
MySQL-shared-3.23.55-1.i386
MyODBC-2.50.39-1.i386
unixODBC-2.2.4.tar
这些软件包可辨别可从以下站点下载:
http://mirrors.sunsite.dk/mysql/Downloads/MySQL-3.23/
http://mysql.azc.uam.mx/Downloads/MyODBC/
http://www.unixodbc.org
上面所列的是我感受速度对比快的站点,事实上在很多镜像站点都可以下载到这些软件包.
2.安装软件
利用以下号令(以root身份)来查看从前能否安装过:
rpm -qa | grep -i mysql
rpm -e (发现的全部软件包)
updatedb
rpm -qa | grep -i odbc
rpm -e (全部发现的软件包)
切换至下载的软件包所在的目录,以root用户的身份履行以下号令:
$cd /usr/local
$tar xzf mysql-3.23.55-pc-linux-i686.tar.gz
$ln -s mysql.3.23.55-pc mysql
$cd mysql
$scripts/mysql_install_db
$chown -R root .
$chown -R mysql data
$chgrp -R mysql .
$bin/safe_mysqld --user=mysql &
下面运行一个MySQL会话:
$./mysql -utest
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1 to server version: 3.23.55
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
这阐明MySQL已经成功安装,目前输入:
mysql> select version();
+-----------+
| version() |
+-----------+
| 3.23.55 |
+-----------+
1 row in set (0.01 sec)
利用号令"\s"来查看一些基本信息:
mysql> \s
--------------
./mysql Ver 11.18 Distrib 3.23.55, for pc-linux (i686)
Connection id: 4
Current database:
Current user: test@localhost
Current pager: stdout
Using outfile: ''
Server version: 3.23.55
Protocol version: 10
Connection: Localhost via UNIX socket
Client characterset: latin1
Server characterset: latin1
UNIX socket: /tmp/mysql.sock
Uptime: 6 min 57 sec
Threads: 1 Questions: 6 Slow queries: 0 Opens: 6 Flush tables:
1 Open tables: 0 Queries per second avg: 0.014
为了实现我们的目的,需求安装别的三个软件包.和MySQL差别的是,这三个软件都是以RPM的格局给出的.切换至软件包所在的目录,运行以下号令:
[root@myserver odbc]#su
[root@myserver odbc]# rpm -Uvh MySQL-client-3.23.55-1.i386.rpm
Preparing... ########################################### [100%]
1:MySQL-client ########################################### [100%]
[root@myserver odbc]# rpm -Uvh MySQL-shared-3.23.55-1.i386.rpm
Preparing... ########################################### [100%]
1:MySQL-shared ########################################### [100%]
[root@myserver odbc]# rpm -Uvh MyODBC-2.50.39-1.i386.rpm
Preparing... ########################################### [100%]
1:MyODBC ########################################### [100%]
这些软件包的安装普通都不会有什么问题.下面来安装unixODBC.在我写本文时最新的unixODBC是2.2.5版,供应下载的文件是unixODBC-2.2.5.tar.gz.切换至软件包所在目录,运行以下号令:
tar xzf unixODBC-2.2.5.tar.gz
切换至unixODBC-2.2.5目录,运行下述号令:
su
./configure
make
make install
但是,这个安装历程并不顺利,呈现了一些问题.首先是一些库文件的位置问题,这两个库文件是libodbcmyS.so和libmyodbc.so,它们普通位于/usr/local/lib目录之下.而在安装历程中,odbcinst.ini配置文件中指导这两个文件的位置却在usr/lib目录之下.所以需求对/etc/odbcinst.ini文件举行一些编辑.编辑完成后,我的odbcinst.ini文件内容以下所示:
[MySQL]
Description = ODBC Driver for MySQL
Driver = /usr/local/lib/libmyodbc.so
Setup = /usr/local/lib/libodbcmyS.so
FileUsate = 1
CPTimeout =
CPReuse =
然后再成立一个/etc/odbc.ini文件,内容以下所示:
Description = MySQL database test
Driver = MySQL
Server = localhost
Database = test
Port = 3306
Socket =
Option =
Stmt =
[MySQL-test]
但是,当我按照手册完成这个文件时,发现本来unixODBC已经建好了这个文件,不过它不在/etc目录之下,而是在/usr/local/etc目录下.于是我把上述两个编辑好的文件拷贝至该目录中.
此外,安装库unixODBC时还需求KDE软件开辟工具包(此中已经包含了Qt)和X软件开辟工具包,不然安装历程将无法举行下去.假如没有安装该软件包,那么可以挑选:开始选单→系统工具→软件包.这时就会启动Red Hat软件担保理工具,选中上述两项内容(如图1所示),点击肯定举行安装.
3.举行测试
首先看一看ODBC和MySQL能否可以精确沟通.我利用isql MySQL-test -v号令来举行测试,后果呈现了"Could not SQLConnect"的错误信息.因为我利用了显示具体信息的-v选项,因此系统提醒无法找到/var/lib/mysql/mysql.sock的信息.后来我发现MySQL是把mysql.sock文件存储在了/tmp目录下,而ODBC则是在/var/lib/mysql目录下查找该文件,难怪它们不能顺利沟通.
目前以root身份来成立一个/var/lib/mysql目录,随后运行以下号令:
chown -R mysql.mysql /var/lib/mysql
然后重新启动mysqld,并且指明了用户名和socket的位置,号令以下所示:
bin/safe_mysqld --user=mysql --socket=/var/lib/mysql/mysql.sock &
再测试一遍,后果一切正常.目前可以举行以下测试了:
/ isql MySQL-test -v
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL> select version();
+----------+
| version()|
+----------+
| 3.23.55 |
+----------+
1 rows affected
1 rows returned
经过前面不断地失利,我都不赶相信软件用户手册了.接着,启动OpenOffice Writer,然后挑选工具→数据源.这时,又一个错误呈现,OpenOffice显示说无法找到libodbc.so.我把libodbc.so从/usr/local/lib拷贝到/usr/lib后,问题就办理了.于是,一切都正常了.图2是OpenOffice的表计划窗口,在这个窗口中,我很简单就完成了一个表的计划,真是太棒了.
固然已经成功,但是我还是不认为轻松,毕竟这个办法过于复杂.于是,我开始追求更简单的办理办法.时间不负有心人,最后,我终于找到了办理的办法,也就是我将要给大家介绍的办法二.
安装配置办法二
这种办法的基本思惟是,通过RHN让Red Hat自己举行软件更新和依靠性的查抄,至于若何设置RHN,请参考本刊2003年第1期"利用RHN让Red Hat Linux自动更新"的文章.
在Red Hat 8.0中,安装的步骤以下:
第一步 up2date mysql mysql-server and mysql-devel
假如网速充足快,那么这个步骤也不会花太多的时间.在我的机械上,这个历程只耗费了4分钟,如图3所示.
第二步 /usr/bin/mysql_install_db
第三步 chown -R mysql.mysql /var/lib/mysql
第四步 chmod -R 666 /var/lib/mysql
第五步 /usr/bin/safe_mysqld-u mysql &
第六步 up2date unixODBC unixODBC-devel
第七步 up2date --src MyODBC
第八步 rpmbuild --rebuild /var/spool/up2date/MyODBC-2.50.39-7.src.rpm
第九步 rpm -Uvh --force /usr/src/redhat/RPMS/i386/MyODBC-2.50.39-7.i386.rpm
第十步 参照办法一编辑/etc/odbc.ini和/etc/odbcinst.ini
但是不知是什么缘由,每次当我利用up2date列表中的软件包时都有一些问题.大概是某一次的安装历程中,我没有清理好系统,大概是当目录树下有如此多的软件包时,up2date无法精确应对.不管怎么说,我还是精确完成了安装.
小结
目前再来做别的一件事情,就是从刚成立的表中提取内容,并且打印地址标签.完成这个步骤耗费了我大量的时间.按照帮忙系统的指导,我大约理解了配置的历程,但是最后没有成功.并且,这个配置历程非常的不直观,更何况有的步骤根本就无法正常工作.
为此,我在网上举行了大量检索,并且辨别到OpenOffice.org和MySQL的论坛中举行了发问,但问题都没有得到办理.工夫不负有心人,最后我终于获知本来出错的缘由竟然是OpenOffice.org的帮忙系统文件档有一些错误.我终于找到了可以让它正常工作的办法.
当我第一次尝试打印地址标签时,MySQL提醒出错信息:"Too many connections.",本来页面中的每一个标签都需求一个自己的衔接.于是,我做了两件事情来办理这个问题.首先,把下面这些加入到了/etc/my.cnf的MySQL章节中:
set-variable = max_connections=200
中止了正在运行的进程之后,在重新启动之前履行了su mysql.我在网上看到有一个MySQL开辟人员倡议,假如不以root身份来启动mysqld的话可以办理"Too many connection"的问题.于是我以MySQL的身份重新启动了mysql,并且在号令行中加入了一个用户参数.这样改变今后,数据库的拜候就正常了.当然,到底哪一个办法有效还要经过一些实行.
整个利用历程中,我的感受是OpenOffice.org要远比我想象的复杂和强盛得多,它可以和各种数据库管理系统一同工作.假如你的SOHO办公环境需求数据库拜候和操作,那么我倡议不要即刻切换至OpenOffice.org,而是先对其举行测试,看一看其能否可以满意你的需求.需求指出的是,任何软件无论是代码还是文档,城市有一些错误,所以不要对利用历程中呈现的一些问题大加抱怨,应当以更主动的态度来发现和办理问题.
以上是“<b>让MySQL与OpenOffice共舞</b>[MySQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:本文地址: | 与您的QQ/BBS好友分享! |