爱心技术专栏专题

[原创]mysql4.0.21安装经验谈

摘录:Mysql教程 来源:Mysql教程 加入时间:2007年03月25日
摘要:
[原创]mysql4.0.21安装经验谈
[原创]mysql 4.0.21安装经验谈

安装mysql 4.0.21遇到不少麻烦,也查了不少CU上面的文章,但都不是很管用,因为费了不少周折,所以有必要介绍一下经验,让后来人少走弯路。我写这篇文章的目的不仅是像我一样的初学者可以完成mysql-4.0.21的安装,而且能够凭本文的经验应付今后mysql版本的安装。是不是有点自夸?我觉得不是,因为我觉得步骤不是最重要的,后面的经验才是最重要的。另外,安装…

转载:转载请保留本信息,本文来自
http://www.51dibs.com
/html/2006/article/info22/a_d95b884f69cb4434.htm

[原创]mysql4.0.21安装经验谈

站点:爱心种子小博士 关键字:[原创]mysql4.0.21安装经验

   
[原创]mysql 4.0.21安装经验谈

安装mysql 4.0.21遇到不少麻烦,也查了不少CU上面的文章,但都不是很管用,因为费了不少周折,所以有必要介绍一下经验,让后来人少走弯路。我写这篇文章的目的不仅是像我一样的初学者可以完成mysql-4.0.21的安装,而且能够凭本文的经验应付今后mysql版本的安装。是不是有点自夸?我觉得不是,因为我觉得步骤不是最重要的,后面的经验才是最重要的。另外,安装环境是Linux AS 3和gcc支持。
一、先说一下安装步骤
#groupadd mysql
#useradd -g mysql mysql
#tar zxvf mysql-4.0.21.tar.gz    /*会生成一个mysql-4.0.21的目录*/
#cd mysql-4.0.21
#./configure --prefix=/usr/local/mysql
#make
#make install
#cp support-files/my-medium.cnf /etc/my.cnf    /*这时会问是否覆盖重名文件,回答y*/
#cd /usr/local/mysql
#bin/mysql_install_db --user=mysql    /*以mysql用户建系统库,必须以mysql用户,这点很重要!*/
#chown -R root  .
#chown -R mysql var
#chgrp -R mysql .
#bin/mysqld_safe --user=mysql &    /*也要用mysql用户运行,如果没任何反应,恭喜!成功了!*/
二、分享经验
1.虽然CU的精华文章很好,但mysql的版本不同,安装有细微差别!最可靠的是看解压缩后的mysql-VERSION目录里的INSTALL-SOURCE文件,我以上的安装步骤就是按照此文件一字不差的粘过去的,就成功了。开始时因为偷懒看CU的中文始终建系统库不能成功,因为那些文章都是以前版本的mysql安装。
2.细节情况
(1)本文是源代码安装,是为了减少不必要的麻烦。如果是二进制安装首先要选择正确的二进制包安装,具体细节请参照INSTALL-SOURCE文件,这点也很重要。步骤和以上差不多,只是少configure、make和make install三步骤。
(2)make大致需要15分钟的时间,请耐心等待,等啊等 :em24:  :em24: 
(3)make install要快的多,也就1分钟不到吧(没有秒表,估算不周请原谅)
(4)建系统库必须用mysql用户!上面已经强调了,我就是因为开始时没有加--user=mysql就建库建不成。建系统库会返回如下信息:
# bin/mysql_install_db --user=mysql
Preparing db table
Preparing host table
Preparing user table
Preparing func table
Preparing tables_priv table
Preparing columns_priv table
Installing all prepared tables
040913 20:11:39 /usr/local/mysql/libexec/mysqld: Shutdown Complete
(5)运行的时候也要用mysql用户,而且命令是mysqld_safe而不是以前的safe_mysqld。这点在INSTALL-SOURCE里面也有说明。这时候最怕出现……ended字样,这代表不能正常启动mysql。没有反应最好,按回车返回#提示符。
(6)正常的话,就可以用:
#vi /etc/rc.d/rc.local
命令编辑启动脚本,在最后加上/usr/local/mysql/bin/mysqld_safe --user=mysql &就完成了安装。
(7)如果还不放心,可以用#netstat -nat检查,如果有3306端口就对了;
也可以用#ps -ef | grep mysqld返回三行带有mysqld字样的结果也可以帮助判断。
(8)最后别忘记改mysql的密码
(完,欢迎大家斧正 :em04: )

 我菜我怕谁 回复于:2004-09-29 19:03:52
十分感谢楼主!!

 odin_free 回复于:2004-09-30 10:52:47
鼓励大家 关心新人 关心技术 关心论坛

 ~wind~ 回复于:2004-10-09 08:22:05
好文章

 jedyfish 回复于:2004-10-10 21:41:47
问下楼主,建系统库需要多少时间??我执行了如下命令:
# bin/mysql_install_db --user=mysql 
系统只是不动(没有死),并没有出现楼主说的:
Preparing db table 
Preparing host table 
Preparing user table 
Preparing func table 
Preparing tables_priv table 
Preparing columns_priv table 
Installing all prepared tables 
040913 20:11:39 /usr/local/mysql/libexec/mysqld: Shutdown Complete 
建系统库需要很长时间么??
忘了说,我没有执行#cp support-files/my-medium.cnf /etc/my.cnf 
我下的mysql的一个文挡里的安装说明里没有这个命令,这个命令必须么?
我第一次接触这个,请楼主指点一下~~~

 GoldSn0ke 回复于:2004-10-13 10:51:38
我先顶一下。

 jonny200 回复于:2004-10-13 11:03:43
顶!

 redfox 回复于:2004-10-13 11:51:39
[quote:d5e402c141="jedyfish"]问下楼主,建系统库需要多少时间??我执行了如下命令:
# bin/mysql_install_db --user=mysql 
系统只是不动(没有死),并没有出现楼主说的:
Preparing db table 
Preparing host table 
Preparing user table 
P..........[/quote:d5e402c141]

/etc/my.cnf 是mysql的配置文件,建系统库很快。

 topjacky 回复于:2004-10-29 11:10:55
对我们新人来说,这种文章很有帮助,真的非常感谢.

 rhinux 回复于:2004-11-01 22:29:52
我出现了这个:不知道下面的 max_allowed_packet"在哪里设置
root@localhost mysql]# bin/mysql_install_db --user=mysql
Installing all prepared tables
Fill help tables
ERROR: 1153  Got a packet bigger than max_allowed_packet bytes
041101 22:23:45 [ERROR] Aborting

041101 22:23:45 [Note] /usr/local/mysql/libexec/mysqld: Shutdown complete


WARNING: HELP FILES ARE NOT COMPLETELY INSTALLED!
The "HELP" command might not work properly


To start mysqld at boot time you have to copy support-files/mysql.server
to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
/usr/local/mysql/bin/mysqladmin -u root password new-password
/usr/local/mysql/bin/mysqladmin -u root -h localhost.localdomain password new-password
See the manual for more instructions.

You can start the MySQL daemon with:
cd /usr/local/mysql ; /usr/local/mysql/bin/mysqld_safe &

You can test the MySQL daemon with the benchmarks in the sql-bench directory:
cd sql-bench ; perl run-all-tests

Please report any problems with the /usr/local/mysql/bin/mysqlbug script!

The latest information about MySQL is available on the web at
http://www.mysql.com
Support MySQL by buying support/licenses at https://order.mysql.com

 dreamwaver 回复于:2004-11-08 15:46:41
我也有同样的错误,修改max_allowed_packet=256M也不行,怎么会事呀?编译安装都是正常的,我的mysql是4.1.7

[root@localhost bin]# ./mysql_install_db --user=mysql
Installing all prepared tables
Fill help tables
ERROR: 1153  Got a packet bigger than max_allowed_packet bytes
041108 15:34:32 [ERROR] Aborting

041108 15:34:32 [Note] /usr/local/mysql/libexec/mysqld: Shutdown complete


WARNING: HELP FILES ARE NOT COMPLETELY INSTALLED!
The "HELP" command might not work properly


To start mysqld at boot time you have to copy support-files/mysql.server
to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
/usr/local/mysql/bin/mysqladmin -u root password new-password
/usr/local/mysql/bin/mysqladmin -u root -h localhost.localdomain password new-password
See the manual for more instructions.

NOTE:  If you are upgrading from a MySQL <= 3.22.10 you should run
the /usr/local/mysql/bin/mysql_fix_privilege_tables. Otherwise you will not be
able to use the new GRANT command!

You can start the MySQL daemon with:
cd /usr/local/mysql ; /usr/local/mysql/bin/mysqld_safe &

You can test the MySQL daemon with the benchmarks in the sql-bench directory:
cd sql-bench ; perl run-all-tests

Please report any problems with the /usr/local/mysql/bin/mysqlbug script!

The latest information about MySQL is available on the web at
http://www.mysql.com
Support MySQL by buying support/licenses at https://order.mysql.com

 dreamwaver 回复于:2004-11-08 15:51:22
顶一下

 aclacl 回复于:2004-11-12 11:34:49
非常好!我正在烦恼如何启动mysql进程呢!

我是用mysql-4.0.21-sol8-sparc-local.gz包安装的,省去了configure和make的过程。有一点不同的是:my-medium.cnf在/usr/local/mysql/share/mysql目录下。还有,需要将/usr/bin/hostname 拷贝到/usr/local/bin/下,才没有错误提示。

 钢盅锅子 回复于:2004-11-14 17:33:26
顶一下,十分感谢

 joyaid 回复于:2004-12-03 12:06:25
支持  !!!!!!!楼主 支持mysql!!!

呵呵~~起码安装比oracle容易多了.

 wglnet 回复于:2004-12-20 09:34:16


 wglnet 回复于:2004-12-20 09:36:08
文章不错,不过有待验证呀!不过还是感谢一下

 孤竹无名 回复于:2004-12-29 11:45:54
我./CONFIGURE 怎么生成不了MAKEFILE啊

 shaoping0330 回复于:2004-12-29 17:34:33
现在最新的是4.0.23,改动还是蛮大的,mysql数据库里面增加了好几个表。

 shadow8424 回复于:2004-12-30 14:11:12
恩,支持楼主!

 sjzsy 回复于:2005-01-10 17:35:34
我在tru64 unix上安装mysql-max-4.0.22-dec-osf5.1-alpaev67. 
当我执行:#./configure --prefix=/usr/local/mysq 后出现: 
Please configure the hostname command to return a correct hostname. 
if you want to solve this at a later stage,restart this script with the --force option 
.这是什么原因? 
我应该怎么作呢??? 
我刚接触这个东西,只是看资料安装。请大家帮帮忙????

 hefnisen 回复于:2005-01-11 17:13:22
各位大虾好厉害

 myster 回复于:2005-01-27 20:34:01
此方法对于后续版本作用不大,如4.1.9、5.0等版本。
每个安装包的不同安装方法也不同,不能一概而论。

 ballball2 回复于:2005-03-29 19:13:00
先装一下,有问题再上来问

 akenlx 回复于:2005-04-07 09:37:53
运行mysql后,发现var目录里多了好多文件
ib_arch_log_000000000
ibdata1
ib_logfile0
ib_logfile1
localhost-bin.001
localhost-bin.002
localhost-bin.003
localhost-bin.004
localhost-bin.005
localhost-bin.index
这些都是什么文件呀,什么用的。我记得我原来var目录下就只有2个数据库目录mysql和test呀

 shiye 回复于:2005-04-07 11:10:44
我安下面步骤安装都正常 
#groupadd mysql 
#useradd -g mysql mysql 
#gunzip < mysql-VERSION.tar.gz | tar -xvf - 
#cd mysql-VERSION 
#./configure --prefix=/usr/local/mysql 
#make 
#make install 
#scripts/mysql_install_db 
#chown -R root /usr/local/mysql 
#chown -R mysql /usr/local/mysql/var 
#chgrp -R mysql /usr/local/mysql 
#cp support-files/my-medium.cnf /etc/my.cnf (overwrite?-->yes) 
#/usr/local/mysql/bin/mysqld_safe --user=mysql & 

打完最后一条命令后提示 

[1]1339 
[root@localhost root}# Starting mysqld daemon with databases from /usr/local/mysql/var 

此时ps中有mysqld_safe进程 

我安楼主说的查看了netstat  有3306端口  ps-ef 也有三航mysqld的内容 
我现在怎样才能进入mysql呢? 

[root@localhost root]#mysql 
-bash:mysql: command not found 
[root@localhost root]#mysql -u root -p 
-bash:mysql: command not found

 zmlul 回复于:2005-04-07 22:31:16
看来还是老老实实看自带的英文安装指南最好。

 NetCrab 回复于:2005-04-19 13:18:27
先顶再看

 yameng 回复于:2005-04-27 15:23:35
bucuo!

 smilerboy 回复于:2005-04-28 13:13:38
我正想装!!!

 bowbow.rain 回复于:2005-05-23 15:41:08
楼主的经验太宝贵了,谢谢楼主! :lol:  :lol:  :lol:

 ppop123 回复于:2005-05-27 22:01:08
#bin/mysqld_safe --user=mysql & /*也要用mysql用户运行,如果没任何反应,恭喜!成功了!*/ 
楼主这样起mysql何苦上面还要
#cp support-files/my-medium.cnf /etc/my.cnf /*这时会问是否覆盖重名文件,回答y*/ 

应该用
cp support-files/mysql.server /etc/
chmod +x /etc/mysql.server 
/etc/mysql.server start  
这样启动mysql才是王道。

 ppop123 回复于:2005-05-27 22:04:38
[quote:ad6a88bf88="akenlx"]运行mysql后,发现var目录里多了好多文件
ib_arch_log_000000000
ibdata1
ib_logfile0
ib_logfile1
localhost-bin.001
localhost-bin.002
localhost-bin.003
localhost-bin.004
localhost-bin.005
localho..........[/quote:ad6a88bf88]

localhost-bin.xxx
这些是binlog
如果你不需要同步库,那就打开/etc/my.cnf,找到
# Replication Master Server (default)
# binary logging is required for replication
log-bin
在log-bin前面加上#
变成
#log-bin
重起mysql就好了。

 ppop123 回复于:2005-05-27 22:06:03
[quote:a528147d76="shiye"]alhost root]#mysql -u root -p 
-bash:mysql: command not found[/quote:a528147d76]

/usr/local/mysql/bin/mysql -uroot 
这样就可以了。

 aaronbai 回复于:2005-05-28 17:11:15
root@localhost mysql-4.1.8]# scripts/mysql_install_db
Neither host localhost.localdomain nor localhost could be looked up with
/usr/local/bin/resolveip
Please configure the hostname command to return a correct hostname.
If you want to solve this at a later stage, restart this script with
the --force option

 Johnite 回复于:2005-05-29 09:33:27
[root@Johnite mysql-3.22.32-pc-linux-gnu-i686]# ./configure --prefix=/web/mysql
WARNING: Your libc libraries are not 100 % compatible with this MySQL version
mysqld should work normally with the exception that host name resolving
will not work.  This means that you should use IP addresses instead
of hostnames when specifying MySQL privileges !
Creating db table
Creating host table
Creating user table
Creating func table
Creating tables_priv table
Creating columns_priv table
./scripts/mysql_install_db: line 317:  3015 段错误                  $execdir/mysqld --bootstrap --skip-grant-tables --basedir=. --datadir=$ldata "$@"  <<END_OF_DATA
use mysql;
$c_d
$i_d
 
$c_h
$i_h
 
$c_u
$i_u
 
$c_f
$i_f
 
$c_t
$c_c
END_OF_DATA
 
Installation of grant tables failed!
 
Examine the logs in /var/lib/mysql for more information.
You can also try to start the mysqld demon with:
./bin/mysqld --skip-grant &
You can use the command line tool
./bin/mysql to connect to the mysql
database and look at the grant tables:
 
shell> ./bin/mysql -u root mysql
mysql> show tables
 
Try mysqld --help if you have problems with paths. Using --log
gives you a log in /var/lib/mysql that may be helpful.
 
The latest information about MySQL is available on the web at
http://www.mysql.com
Please consult the MySQL manual section: Problems running mysql_install_db,
and the manual section that describes problems on your OS.
Another information source is the MySQL email archive.
Please check all of the above before mailing us!
And if you do mail us, you MUST use the ./bin/mysqlbug script!
[root@Johnite mysql-3.22.32-pc-linux-gnu-i686]#

 sfz103 回复于:2005-07-08 11:17:04
[root@song bin]# ./mysql
ERROR 2002: Cant connect to local MySQL server through socket /tmp/mysql.sock (2)

这个是我的出现的问题???
运行不行啊。


[root@song bin]# ps -aux |grep mysql
Warning: bad syntax, perhaps a bogus -? See /usr/share/doc/procps-3.2.3/FAQ
root      7603  0.0  0.4  6832 1076 ?        S    Jul06   0:00 /bin/sh bin/mysqld_safe --user=mysql
mysql     7620  0.0  4.9 105572 12744 ?      Sl   Jul06   0:00 /usr/local/mysql/libexec/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/var --user=mysql --pid-file=/usr/local/mysql/var/song.pid --skip-locking
root     16766  0.0  0.2  6204  656 pts/3    R+   11:19   0:00 grep mysql

 sunj1978 回复于:2005-08-06 21:49:42
请问ppop123 。

>/usr/local/mysql/bin/mysql -uroot 
>这样就可以了。

这样是可以执行了,但我在连接其他liunx时是可以直接运行mysql -uroot的。怎么样才能在任意位置就可以运行mysql这个命令那?请高手指教。

 jackylau 回复于:2005-08-16 21:26:02
[quote:06c115d7e5="ppop123"]#bin/mysqld_safe --user=mysql & /*也要用mysql用户运行,如果没任何反应,恭喜!成功了!*/ 
楼主这样起mysql何苦上面还要
#cp support-files/my-medium.cnf /etc/my.cnf /*这时会问是否覆盖重名文件,回答y*/ 
..........[/quote:06c115d7e5]
这样也不是正道.
应该这样
cd /etc/init.d
cp /usr/local/mysql/support-files/mysql.server mysql
chmod +x mysql
chkconfig --del mysql
chkconfig --add mysql

 sunusa 回复于:2005-08-17 19:30:02
[root@localhost mysql-standard-4.0.25-pc-linux-gnu-i686]# ./configure --prefix=/ usr/local/mysql
NOTE: This is a MySQL binary distribution. Its ready to run, you dont
need to configure it!
 
To help you a bit, I am now going to create the needed MySQL databases
and start the MySQL server for you.  If you run into any trouble, please
consult the MySQL manual, that you can find in the Docs directory.
 
Installing all prepared tables
050817 19:19:32 ./bin/mysqld: Shutdown Complete
 
 
To start mysqld at boot time you have to copy support-files/mysql.server
to the right place for your system
 
PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
./bin/mysqladmin -u root password new-password
./bin/mysqladmin -u root -h localhost.localdomain password new-password
See the manual for more instructions.
 
NOTE:  If you are upgrading from a MySQL <= 3.22.10 you should run
the ./bin/mysql_fix_privilege_tables. Otherwise you will not be
able to use the new GRANT command!
 
You can start the MySQL daemon with:
cd . ; ./bin/mysqld_safe &
 
You can test the MySQL daemon with the benchmarks in the sql-bench directory:
cd sql-bench ; perl run-all-tests
 
Please report any problems with the ./bin/mysqlbug script!
 
The latest information about MySQL is available on the web at
http://www.mysql.com
Support MySQL by buying support/licenses at https://order.mysql.com
 
Starting the mysqld server.  You can test that it is up and running
with the command:
./bin/mysqladmin version
[root@localhost mysql-standard-4.0.25-pc-linux-gnu-i686]# Starting mysqld daemon  with databases from /var/lib/mysql
STOPPING server from pid file /var/run/mysqld/mysqld.pid
050817 19:19:32  mysqld ended
 
[root@localhost mysql-standard-4.0.25-pc-linux-gnu-i686]# make
make: *** No targets specified and no makefile found.  Stop.


安装的这没法继续了,makefile 没找到,另外请问高手./configure --prefix=/ usr/local/mysql是何作用?

 sunusa 回复于:2005-08-18 08:12:30
看看解压包的INSTALL安装说明,还是安装成功了!看来还是看英文原版的比较可靠。呵呵。。。

 月中井 回复于:2005-09-11 08:12:45
[root@localhost mysql-standard-4.0.26-pc-linux-gnu-i686]# ./configure --prefix=/ usr/local/mysql 
NOTE: This is a MySQL binary distribution. Its ready to run, you dont 
need to configure it! 

To help you a bit, I am now going to create the needed MySQL databases 
and start the MySQL server for you.  If you run into any trouble, please 
consult the MySQL manual, that you can find in the Docs directory. 

Installing all prepared tables 
050910 19:19:32 ./bin/mysqld: Shutdown Complete 


To start mysqld at boot time you have to copy support-files/mysql.server 
to the right place for your system 

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER ! 
To do so, start the server, then issue the following commands: 
./bin/mysqladmin -u root password new-password 
./bin/mysqladmin -u root -h localhost.localdomain password new-password 
See the manual for more instructions. 

NOTE:  If you are upgrading from a MySQL <= 3.22.10 you should run 
the ./bin/mysql_fix_privilege_tables. Otherwise you will not be 
able to use the new GRANT command! 

You can start the MySQL daemon with: 
cd . ; ./bin/mysqld_safe & 

You can test the MySQL daemon with the benchmarks in the sql-bench directory: 
cd sql-bench ; perl run-all-tests 

Please report any problems with the ./bin/mysqlbug script! 

The latest information about MySQL is available on the web at 
http://www.mysql.com 
Support MySQL by buying support/licenses at https://order.mysql.com 

Starting the mysqld server.  You can test that it is up and running 
with the command: 
./bin/mysqladmin version 
[root@localhost mysql-standard-4.0.26-pc-linux-gnu-i686]# Starting mysqld daemon  with databases from /var/lib/mysql 
STOPPING server from pid file /var/run/mysqld/mysqld.pid 
050910 19:19:32  mysqld ended 

这该怎么办呢????

 vsun 回复于:2005-09-11 10:09:04
其实安装MYSQL很简单。
直接下载MYSQL网站上面对应您的操作系统的RPM包。
然后运行RPM包安装即可。

http://oa2008.com.cn 
网上办公系统全面免费公测拉!
OA2008网上办公交流论坛欢迎您的加入!!


客户服务中心信箱:[email protected] [email protected] 网站地图

声明

合作伙伴: