Perl中DBI、DBD::mysql模块的安装
Perl中DBI、DBD::mysql模块的安装
使用的软件版本
DBI-1.604.tar.gz
DBD-mysql-4.006.tar.gz
建议使用以上版本搭配,否则可能连接mysql错误
一、DBI的安装
wget http://www.cpan.org/modules/by-module/DBD/DBI-1.604.tar.gz
tar -zxvf DBI-1.604.tar.gz
cd DBI-1.604
perl Makefile.PL
make
make test
make install
二、DBD的安装
注意mysql的环境变量,若没有则用 添加/usr/local/mysql/bin到环境变量PATH中
PATH=/usr/local/mysql/bin:$PATH;
export PATH (mysql的安装路径根据实际情况填写)
wget http://www.cpan.org/modules/by-module/DBD/DBD-mysql-4.006.tar.gz
tar -zxvf DBD-mysql-4.006.tar.gz
cd DBD-mysql-4.006
perl Makefile.PL --mysql_config=/usr/local/mysql/bin/mysql_config
make
make test
make install
三、其它可能发生的状况
如果运行某个调用MYSQL数据库的程序时出现如下系统提示:
install_driver(mysql) failed: Can't load '/usr/lib/perl5/site_perl/5.6.1/i386-linux/auto/DBD/mysql/mysql.so' for module DBD::mysql: /usr/lib/perl5/site_perl/5.6.1/i386-linux/auto/DBD/mysql/mysql.so: undefined symbol: uncompress at /usr/lib/perl5/5.6.1/i386-linux/DynaLoader.pm line 206. at (eval 2) line 3
那么说明DBD::MYSQL未安装成功。
此时将/usr/local/mysql/include/mysql/*
复制到/usr/include/
同时将/usr/local/mysql/lib/mysql/*
复制到/usr/lib/(64位系统/usr/lib64/)
然后使用perl Makefile.PL设置环境,再进行后续的正常安装,就能正确连接到MYSQL数据库。
相关文档:
Beware of MySQL Data Truncation
http://www.mysqlperformanceblog.com/2009/02/07/beware-of-mysql-data-truncation/
比如:有一个表aritcle和另一个表article_comment,关联是article的id
CREATE TABLE `article` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(200) NOT NULL,
......
第一招、mysql服务的启动和停止
net stop mysql
net start mysql
第二招、登陆mysql
语法如下: mysql -u用户名 -p用户密码
键入命令mysql -uroot -p, 回车后提示你输入密码,输入12345,然后回车即可进入到mysql中了,mysql的提示符是:
mysql>
注意,如果是连接到另外的机器上,则需要加入一个参数-h机 ......
近来对php比较感兴趣,就断断续续的花了两个星期的时间把整个php开发需要用到的东西都装好了,大概的安装过程如下。
一、安装的软件:
Apache: 2.2.14
PHP:5.2.12
MySQL:5.1.42。
SVN:1.5.6
PHPMyAdmin:3.2.5
Zend Studio: 7.1
Zend Debugger: 5.1.14
二、安装过程:
1. 安装和配置apache
安装:首先从http://apa ......
轉自花開的地方
mysql有一个功能就是可以log下来运行的比较慢的sql语句,默认是没有这个log的,为了开启这个功能,要修改my.cnf或者在mysql启动
的时候加入一些参数。
如果在my.cnf里面修改,需增加如下几行
long_query_time = 1
log-slow-queries
=
log-queries-not-using-indexes
long_query_t ......
做项目时由于业务逻辑的需要,必须对数据表的一行或多行加入行锁,举个最简单的例子,图书借阅系统。假设 id=1 的这本书库存为 1 ,但是有 2 个人同时来借这本书,此处的逻辑为 :
Select restnum from book where id =1 ;
-- 如果 restnum 大于 0 ,执行 update
Update boo ......