centos LAMP第一部分-环境搭建 Linux软件删除方式,mysql安装,apache,PHP,apache和php结合,phpinfo页面,ldd命令 第十九节课

时间:2023-01-31 16:04:38

centos LAMP第一部分-环境搭建  Linux软件删除方式,mysql安装,apache,PHP,apache和php结合,phpinfo页面,ldd命令 第十九节课

打命令之后可以输入: echo $?

上半节课

Linux软件删除方式

mysql安装

apache

下半节课

PHP
apache和php结合
排错
phpinfo页面
ldd命令

apache下面的一个软件httpd,大家会把httpd误认为是apache

搜狐镜像:http://mirrors.sohu.com

康盛镜像:http://www.aminglinux.com/study_v2/download.html

Linux软件删除方式
源码包删除:直接删除目录
rpm删除:rpm -e
yum 删除 yum remove

echo $?
是否编译成功或安装成功

免编译的包一般都带有:icc-glibc23


mysql

yum安装的mysql,本地root密码默认为空

http://bbs.qcloud.com/thread-5583-1-1.html

下载mysql
/usr/local/src 源码包放置地方

二进制免编译包:mysql-5.1.40-linux-i686-icc-glibc23.tar.gz

wget http://syslab.comsenz.com/downloads/linux/mysql-5.1.40-linux-i686-icc-glibc23.tar.gz //康盛的地址
注意:上面的地址是32位机器用的,如果你的机器是64位,下载这个包(http://syslab.comsenz.com/downloads/linux/mysql-5.1.40-linux-x86_64-icc-glibc23.tar.gz)安装方法是一样的。

mysql-5.1.40-linux-i686-icc-glibc23.tar.gz  //icc表示用gcc编译

skip-networking 不让mysql监听3306端口,只用本地Unix socket
本地用/tmp/mysql.sock 连接数据库,不用tcp/ip

步骤:

tar zxvf /usr/local/src/mysql-5.1.-linux-i686-icc-glibc23.tar.gz    //下载免编译安装包
mv mysql-5.1.-linux-i686-icc-glibc23 /usr/local/mysql/
useradd -s /sbin/nologin mysql //新建mysql用户
cd /usr/local/mysql
mkdir -p /data/mysql //新建数据库数据目录
chown -R mysql:mysql /data/mysql //更改数据目录的属主属组
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql //初始化
cp support-files/my-large.cnf /etc/my.cnf //拷贝配置文件
vi /etc/my.cnf //修改配置文件
cp support-files/mysql.server /etc/init.d/mysqld //拷贝启动脚本
vi !$ //修改启动脚本 basedir=/usr/local/mysql ,datadir=/data/mysql
chmod /etc/init.d/mysqld //更改启动脚本权限
vim /etc/init.d/mysqld #修改datadir
chkconfig --add mysqld
chkconfig mysqld on //加入到系统服务列表并设置启动级别
service mysqld start //启动mysql
ps -aux|grep mysql //是否有mysql进程
netstat -lnp|grep 3306

apache

APR是一个使apache在Linux下和Windows下都可以运行的一个东西,缺少它apache编译不了,apache2.2自带 apache2.4默认没有

./configure的时候报错

APR Version: 1.5.0

checking for APR... reconfig

先要安装perl 然后再装apache 2.4需要perl

apr:支持apache移植的包,不管在Windows还是Linux都能运行
http2.4.X需要apr和apr-util

/usr/local/apache2/bin/apxs是perl脚本,所以安装php 需要先安装perl

编译时不加安装路径会安装在/usr/local/apache2下

编译时可以指定不编译某个模块

主要的两种工作模式
worker:进程和线程共存
prefork:一个父进程生成很多子进程

--enable-so :安装动态扩展模块,dso:动态加载,动态库
so文件:动态加载模块文件,xx.so
c文件 :静态模块文件,xx.c

旧版本的apache,如果不知道编译选项,查看编译选项: cat /usr/local/apache2/build/config.nice

centos LAMP第一部分-环境搭建  Linux软件删除方式,mysql安装,apache,PHP,apache和php结合,phpinfo页面,ldd命令 第十九节课

查看编译选项: /usr/local/src/httpd-2.2./configure --help

检查apache的配置文件是否有问题:  ./bin/httpd -t  或  /usr/local/apache2/bin/httpd -t  等价  /usr/local/apache2/bin/apachectl -t

配置文件路径: /usr/local/apache2/bin/conf/httpd.conf 
查看静态已加载模块 -l: /usr/local/apache2/bin/httpd -l 
查看加载的所有模块 -M 大写M: /usr/local/apache2/bin/httpd -M

apache控制脚本: /usr/local/apache2/bin/apachectl  start /stop /restart /graceful /-t

graceful:重新加载配置文件,不杀死apache进程

restart:杀死apache进程,再启动

测试是否安装成功,下载整个网页: curl localhost

步骤

安装apache
rpm -qa |grep httpd //查看是否已经安装过apache
rpm -e httpd-2.2.-.el6.centos.x86_64
wget http://archive.apache.org/dist/httpd/httpd-2.2.27.tar.bz2
tar jvxf httpd-2.2..tar.bz2
cd httpd-2.2.
./configure --prefix=/usr/local/apache2 //指定安装目录 --enable-mods-shared=most //也可以是all不过不安全 --enable-so
make && make install
/usr/local/apache2/bin/apachectl start
ps -aux |grep httpd
netstat -lnp |grep

更改配置文件,不报servername的错误

centos LAMP第一部分-环境搭建  Linux软件删除方式,mysql安装,apache,PHP,apache和php结合,phpinfo页面,ldd命令 第十九节课

centos LAMP第一部分-环境搭建  Linux软件删除方式,mysql安装,apache,PHP,apache和php结合,phpinfo页面,ldd命令 第十九节课


PHP

apache将php当作一个模块调用:--enable-so :安装扩展模块

有一些包没有的话,安装PHP要依赖的包,要先安装一下epel源: yum install -y epel-release

比如: yum install -y libjpeg-devel

不知道包名可以yum list一下

yum list |grep -i mcrypt

yum install mcrypt-y

make的过程:把源代码文件gcc成可执行文件

php执行文件 解析php文件:  /usr/local/php/bin/php xx.php  
列出PHP已经安装的模块 小写m -m:  /usr/local/php/bin/php -m  
查看php的参数,跟phpinfo()网页输出一样 -i: /usr/local/php/bin/php -i 
可以查看编译选项
可以查看配置文件路径
可以查看配置文件是否加载

php配置文件
php.ini-development
php.ini-production

步骤

安装php
wget http://cn2.php.net/distributions/php-5.3.28.tar.gz
tar zxf php-5.3..tar.gz
cd php-5.3.
./configure
--prefix=/usr/local/php //这个一定要加
--with-apxs2=/usr/local/apache2/bin/apxs //一定要加 结合apache 要先安装perl否则会报错
--with-config-file-path=/usr/local/php/etc
--with-mysql=/usr/local/mysql //一定要加 结合mysql
--with-libxml-dir
--with-gd // 网站验证码需要用到,验证码有问题需要检查是否有gd模块
--with-jpeg-dir
--with-png-dir
--with-freetype-dir
--with-iconv-dir
--with-zlib-dir
--with-bz2
--with-openssl
--with-mcrypt
--enable-soap
--enable-gd-native-ttf
--enable-mbstring
--enable-sockets
--enable-exif
--disable-ipv6
make && make install
ls /usr/local/src/php-5.3./php.ini-development
cp /usr/local/src/php-5.3./php.ini-development /usr/local/php/etc/php.ini //将php.ini从源码包拷贝过来
/usr/local/php/bin/php -i |grep -i loaded configuration //查看是否已经加载php.ini /usr/local/apache2/bin/apxs -i -a -c mod_status.c //apache安装扩展模块需要用apxs 这个文件

apache和php结合

/usr/local/apache2/bin/conf/httpd.conf
查看静态已加载模块 -l:  /usr/local/apache2/bin/httpd -l  
查看加载的所有模块 -M :  /usr/local/apache2/bin/httpd -M  
 /usr/local/apache2/bin/apachectl start /stop /restart /graceful /-t

/usr/local/php/bin/php xx.php
列出PHP已经安装的模块 -m:  /usr/local/php/bin/php -m  
查看php的参数-i:  /usr/local/php/bin/php -i

查看是否已经加载php.ini文件: /usr/local/php/bin/php -i |grep -i loaded configuration

---------------------------------------
apache会自动加载php模块
在apache目录下查找php模块: ls /usr/local/apache2/modules/libphp5.so 
查找apache的配置文件,是否有一行LoadModule php5_module modules/libphp5.so: /usr/local/apache2/bin/conf/httpd.conf 
查看是否已经加载php模块: /usr/local/apache2/bin/httpd -M

配置apache结合php
vim /usr/local/apache2/conf/httpd.conf找到:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
改为:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Allow from all
</Directory>

找到:
AddType application/x-gzip .gz .tgz
在该行下面添加:
AddType application/x-httpd-php .php

找到:
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
将该行改为:
<IfModule dir_module>
DirectoryIndex index.html index.htm index.php
</IfModule>

找到:
#ServerName www.example.com:80
修改为:
ServerName localhost:80

检查语法: /usr/local/apache2/bin/apachectl -t 
最后重启: /usr/local/apache2/bin/apachectl restart

将1.php 放到 /usr/local/apache2/htdocs/下: mv .php /usr/local/apache2/htdocs/ 
测试: curl localhost/.php

//phpinfo页面
.php
<?php
phpinfo();
?>

------------------------------------------------
排错

第一步检查模块

/usr/local/apache2/bin/apachectl -M |grep -i php

检查apache目录下是否有libphp5.so文件:  /usr/local/apache2/modules/libphp5.so

php5 module

vi /usr/local/apache2/conf/httpd.conf

查看libphp5.so缺少了哪个依赖库文件
ldd命令检查:   /usr/local/apache2/modules/libphp5.so

第二步检查类型是否加上addtype

看一下有无x-httpd-php .php: cat /usr/local/apache2/conf/httpd.conf |grep -i 'addtype'

第三步检查防火墙和selinux

selinux有没有关: getenforce

iptables -F && iptables-save

第四步重启apache
修改了httpd.conf必须要重启apache: /usr/local/apache2/bin/apachectl restart /graceful 
不行的话先杀死apache再重启: killall httpd


MySQL初始化

centos LAMP第一部分-环境搭建  Linux软件删除方式,mysql安装,apache,PHP,apache和php结合,phpinfo页面,ldd命令 第十九节课

centos LAMP第一部分-环境搭建  Linux软件删除方式,mysql安装,apache,PHP,apache和php结合,phpinfo页面,ldd命令 第十九节课


apache安装

centos LAMP第一部分-环境搭建  Linux软件删除方式,mysql安装,apache,PHP,apache和php结合,phpinfo页面,ldd命令 第十九节课

apache动态库

centos LAMP第一部分-环境搭建  Linux软件删除方式,mysql安装,apache,PHP,apache和php结合,phpinfo页面,ldd命令 第十九节课

apache自带ab压测工具

centos LAMP第一部分-环境搭建  Linux软件删除方式,mysql安装,apache,PHP,apache和php结合,phpinfo页面,ldd命令 第十九节课


ldd命令
 
ldd根据可执行程序查看动态链接库
ldd 可执行文件名
 
ldd  /usr/local/apache/bin/httpd
        linux-vdso.so.1 =>  (0x00007fff9dc90000)
        libaprutil-0.so.0 => /usr/local/apache/lib/libaprutil-0.so.0 (0x00002af026fcd000)   

查看php是否缺少某个功能模块


我安装的步骤

--安装mysql
cd /download &&wget -c http://mirrors.sohu.com/mysql/MySQL-5.1/mysql-5.1.73-linux-x86_64-glibc23.tar.gz //下载免编译包
tar -zxvf mysql-5.1.-linux-x86_64-glibc23.tar.gz //解压
mkdir -p /usr/local/mysql
mv mysql-5.1.-linux-x86_64-glibc23/ /usr/local/mysql
useradd -s /sbin/nologin mysql //新建mysql用户
cd /usr/local/mysql
mkdir -p /data/mysql //新建数据库数据目录
chown -R mysql:mysql /data/mysql //更改数据目录的属主属组
cd scripts //打开脚本目录
. mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql & //初始化 注意前面一点 表示执行脚本mysql_install_db
echo $?
cp support-files/my-large.cnf /etc/my.cnf //拷贝配置文件
vi /etc/my.cnf //修改配置文件
cp support-files/mysql.server /etc/init.d/mysqld //拷贝启动脚本
vi !$ //修改启动脚本 basedir=/usr/local/mysql ,datadir=/data/mysql
chmod /etc/init.d/mysqld //更改启动脚本权限
chkconfig --add mysqld
chkconfig mysqld on //加入到系统服务列表并设置启动级别
chkconfig --list |grep mysql
service mysqld start //启动mysql
/usr/local/mysql/bin/mysql //检查mysql能否链接
ps -aux|grep mysql //是否有mysql进程
netstat -lnp|grep 遇到的问题:FATAL ERROR: Could not find ./bin/my_print_defaults的解决办法
http://blog.haohtml.com/archives/9674

f

--安装apache
cd /download &&wget -c http://archive.apache.org/dist/httpd/httpd-2.2.27.tar.bz2 &
tar jvxf httpd-2.2..tar.bz2
cd httpd-2.2.
mkdir -p /usr/local/apache2
yum install gcc -y
./configure --prefix=/usr/local/apache2 --enable-mods-shared=most --enable-so
make && make install
/usr/local/apache2/bin/apachectl start
ps -aux |grep httpd
netstat -lnp |grep 遇到的问题:安装Apache时./configure出现`/usr/local/src/httpd-2.2./srclib/apr`:的解决方法
没有安装gcc
http://blog.sina.com.cn/s/blog_963086810100uyrb.html Making all in xml/expat
make[]: Entering directory `/download/httpd-2.2./srclib/apr-util/xml/expat'
/bin/sh ./libtool --silent --mode=compile gcc -g -O2 -DHAVE_EXPAT_CONFIG_H -I./lib -I. -o lib/xmlparse.lo -c lib/xmlparse.c
/bin/sh ./libtool --silent --mode=compile gcc -g -O2 -DHAVE_EXPAT_CONFIG_H -I./lib -I. -o lib/xmltok.lo -c lib/xmltok.c
/bin/sh ./libtool --silent --mode=compile gcc -g -O2 -DHAVE_EXPAT_CONFIG_H -I./lib -I. -o lib/xmlrole.lo -c lib/xmlrole.c
/bin/sh ./libtool --silent --mode=link gcc -g -O2 -DHAVE_EXPAT_CONFIG_H -I./lib -I. -no-undefined -version-info :: -rpath /usr/local/apache2/lib -o libexpat.la lib/xmlparse.lo lib/xmltok.lo lib/xmlrole.lo
make[]: Leaving directory `/download/httpd-2.2./srclib/apr-util/xml/expat'
make[]: Entering directory `/download/httpd-2.2./srclib/apr-util'
/bin/sh /download/httpd-2.2./srclib/apr/libtool --silent --mode=compile gcc -g -O2 -pthread -DHAVE_CONFIG_H -DLINUX -D_REENTRANT -D_GNU_SOURCE -I/download/httpd-2.2./srclib/apr-util/include -I/download/httpd-2.2./srclib/apr-util/include/private -I/download/httpd-2.2./srclib/apr/include -I/download/httpd-2.2./srclib/apr-util/xml/expat/

f

--安装php
cd /download &&wget -c http://cn2.php.net/distributions/php-5.3.28.tar.gz &
tar zxf php-5.3..tar.gz
cd php-5.3.
mkdir -p /usr/local/php
yum install -y libxml2-devel
yum install -y openssl openssl-devel
yum install -y bzip2 bzip2-devel
yum install -y libmcrypt-devel
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-libxml-dir--with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-bz2 --with-openssl --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets --enable-exif --disable-ipv6 make && make install
echo $?
mkdir -p /usr/local/php/etc/ ls /download/php-5.3./php.ini-development
cp /download/php-5.3./php.ini-development /usr/local/php/etc/php.ini //将php.ini从源码包拷贝过来
/usr/local/php/bin/php -i |grep -i 'loaded configuration' //查看是否已经加载php.ini /usr/local/apache2/bin/apxs -i -a -c mod_status.c //apache安装扩展模块需要用apxs 这个文件 ----------------------------------------------------------
解决方法:缺少libxml2-devel包
http://www.apelearn.com/study_v2/chapter17.html
hecking whether to enable LIBXML support... yes
checking libxml2 install dir... no
checking for xml2-config path...
configure: error: xml2-config not found. Please check your libxml2 installation.
[root@steven php-5.3.]# --prefix=/usr/local/php
-bash: --prefix=/usr/local/php: 没有那个文件或目录 checking libxml2 install dir... no
checking for xml2-config path... rpm -qa | grep libxml2
libxml2-python-2.7.-.el6_6..x86_64
libxml2-2.7.-.el6_6..x86_64 rpm -ql libxml2-2.7.-.el6_6..x86_64
/usr/bin/xmlcatalog
/usr/bin/xmllint
/usr/lib64/libxml2.so.
/usr/lib64/libxml2.so.2.7.
/usr/share/doc/libxml2-2.7.
/usr/share/doc/libxml2-2.7./AUTHORS
/usr/share/doc/libxml2-2.7./ChangeLog.gz
/usr/share/doc/libxml2-2.7./Copyright
/usr/share/doc/libxml2-2.7./NEWS
/usr/share/doc/libxml2-2.7./README
/usr/share/doc/libxml2-2.7./TODO
/usr/share/man/man1/xmlcatalog..gz
/usr/share/man/man1/xmllint..gz
/usr/share/man/man3/libxml..gz yum install -y libxml2-devel [root@steven php-5.3.]# echo $?
[root@steven php-5.3.]# ls /usr/local/php

F

--php和apache结合
/usr/local/apache2/bin/apachectl -M |grep -i php
ldd /usr/local/apache2/modules/libphp5.so
cat /usr/local/apache2/conf/httpd.conf |grep -i 'addtype'
getenforce
iptables -F && iptables-save
/usr/local/apache2/bin/apachectl restart
/usr/local/apache2/bin/httpd -l
/usr/local/apache2/bin/httpd -M
/usr/local/php/bin/php -m
/usr/local/php/bin/php -i
ls /usr/local/apache2/modules/libphp5.so vi /usr/local/apache2/conf/httpd.conf
配置apache结合php
vim /usr/local/apache2/conf/httpd.conf找到:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
改为:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Allow from ALL --改这里
</Directory> 找到:
AddType application/x-gzip .gz .tgz
在该行下面添加:
AddType application/x-httpd-php .php 找到:
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
将该行改为:
<IfModule dir_module>
DirectoryIndex index.html index.htm index.php
</IfModule> 找到:
#ServerName www.example.com:
修改为:
ServerName localhost: /usr/local/apache2/bin/apachectl -t //检查语法
vi /usr/local/apache2/htdocs/.php
killall httpd
/usr/local/apache2/bin/apachectl start curl localhost/.php //测试PHP能否解释 //phpinfo页面
.php
<?php
phpinfo();
?>
---------------------------------------------------------------------- http://bbs.chinaunix.net/thread-1952338-1-1.html httpd: Syntax error on line of /usr/local/apache2/conf/httpd.conf: Cannot load /usr/local/apache2/modules/libphp5.so into server: /usr/local/apache2/modules/libphp5.so: undefined symbol: zend_ini_boolean_displayer_cb /usr/local/apache2/conf/httpd.conf里有写libphp5.so
LoadModule alias_module modules/mod_alias.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule php5_module modules/libphp5.so ldd /usr/local/apache2/modules/libphp5.so //ldd检查libphp5.so动态库文件无问题 cd logs
cat error_log //查看apache错误日志
[Sun Oct :: ] [notice] Digest: generating secret for digest authentication ...
[Sun Oct :: ] [notice] Digest: done
[Sun Oct :: ] [notice] Apache/2.2. (Unix) DAV/ configured -- resuming normal operations
[Sun Oct :: ] [error] [client 192.168.0.101] File does not exist: /usr/local/apache2/htdocs/favicon.ico
[Sun Oct :: ] [error] [client 192.168.0.101] File does not exist: /usr/local/apache2/htdocs/favicon.ico # /usr/local/apache2/bin/apachectl -t
httpd: Syntax error on line of /usr/local/apache2/conf/httpd.conf: Cannot load /usr/local/apache2/modules/libphp5.so into server: /usr/local/apache2/modules/libphp5.so: undefined symbol: zend_ini_boolean_displayer_cb

F


配置好apache的vhost之后,可以访问一下设置好的域名,看一下会不会弹出apache的测试页面

无问题的话,就可以安装Discuz! 之类的程序了

比如在浏览器里输入

http://www.123.com

centos LAMP第一部分-环境搭建  Linux软件删除方式,mysql安装,apache,PHP,apache和php结合,phpinfo页面,ldd命令 第十九节课

F


安装好lamp之后,访问日志可能会报timezone问题

这时候修改一下php.ini文件里的date.timezone即可

grep date.timezone /usr/local/php-fpm/etc/php.ini
# grep date.timezone /usr/local/php-fpm/etc/php.ini
; http://php.net/date.timezone
;date.timezone =

date.timezone = 'Asia/Shanghai'

http://www.linuxidc.com/Linux/2013-07/86963.htm


php的常用扩展

# pwd
/usr/local/php-fpm/include/php/ext
[root@centos ext]# ll
total 68
drwxr-xr-x 3 root root 4096 Dec 18 14:56 date
drwxr-xr-x 2 root root 4096 Dec 18 14:56 dom
drwxr-xr-x 3 root root 4096 Dec 18 14:56 ereg
drwxr-xr-x 2 root root 4096 Dec 18 14:56 filter
drwxr-xr-x 3 root root 4096 Dec 18 14:56 gd
drwxr-xr-x 2 root root 4096 Dec 18 14:56 hash
drwxr-xr-x 2 root root 4096 Dec 18 14:56 iconv
drwxr-xr-x 2 root root 4096 Dec 18 14:56 json
drwxr-xr-x 2 root root 4096 Dec 18 14:56 libxml
drwxr-xr-x 4 root root 4096 Dec 18 14:56 mbstring
drwxr-xr-x 3 root root 4096 Dec 18 14:56 pcre
drwxr-xr-x 2 root root 4096 Dec 18 14:56 pdo
drwxr-xr-x 2 root root 4096 Dec 18 14:56 session
drwxr-xr-x 2 root root 4096 Dec 18 14:56 spl
drwxr-xr-x 3 root root 4096 Dec 18 14:56 sqlite3
drwxr-xr-x 2 root root 4096 Dec 18 14:56 standard
drwxr-xr-x 2 root root 4096 Dec 18 14:56 xml

iconv
mb_convert_encoding的
http://www.cnblogs.com/pinocchioatbeijing/archive/2012/03/20/2407869.html
1. 何为PDO?
PDO(PHP数据对象) 是一个轻量级的、具有兼容接口的PHP数据连接拓展,是一个PHP官方的PECL库,随PHP 5.1发布,需要PHP 5的面向对象支持,因而在更早的版本上无法使用。它所提供的数据接入抽象层,具有与具体数据库类型无关的优势,为它所支持的数据库提供统一的操作接口。目前支持的数据库有Cubrid、FreeTDS / Microsoft SQL Server / Sybase、Firebird/Interbase 6、IBM DB2、IBM Informix Dynamic Server、MySQL 3.x/4.x/5.x、Oracle Call Interface、ODBC v3 (IBM DB2, unixODBC and win32 ODBC)、PostgreSQL、SQLite 3 and SQLite 2、Microsoft SQL Server / SQL Azure等。由于PDO是在底层实现的统一的数据库操作接口,因而利用它能够实现更高级的数据库操作,比如存储过程的调度等。

unixODBC,这是Unix类操作系统的ODBC驱动程序管理器

f