zz在Ubuntu中通过源码安装编译安装软件(MySQL篇)

  使用Ubuntu Server作为本地测试环境已经有一段时间了,一直都是使用apt-get方式来安装各种应用软件,通过源码编译安装应用软件是Linux和Unix环 境下最常用的方式。通过源码编译安装的最大好处就是你知道自己做了什么,这种方式安装软件自由灵活,也适用于各种平台、维护方便;本系列文章都是在 Ubuntu Server系统的命令行模式下完成。

        在进行源码编译安装之前,我们首先需要作如下的准备工作:

1、更新您的Ubuntu

sudo apt-get update 
sudo apt-get upgrade

2、安装所需软件包

sudo apt-get install binutils cpp fetchmail flex gcc libarchive-zip-perl libc6-dev libcompress-zlib-perl libdb4.3-dev libpcre3 libpopt-dev lynx m4 make ncftp nmap perl perl-modules unzip zip zlib1g-dev autoconf automake1.9 libtool bison autotools-dev g++ build-essential

apt-get可一次安装多个软件,以上安装可根据需要选装.在安装过程中可能会提示你插入Ubuntu的光盘.如果通过SSH远程管理Ubuntu出现乱码,不能正常查看汉字信息,请参考PuTTY连Ubuntu的SSH出现乱码的处理

3、安装libncurses5-dev

sudo apt-get install libncurses5-dev

通过源码编译安装软件时,出现错误信息:

checking for termcap functions library… configure: error: No curses/termcap library found

安装libncurses5-dev库方可解决.

今天首先介绍的是LAMP组中作为数据存储的MySQL的源码编译安装过程:

mysql使用utf-8作为默认编码: 
groupadd mysql 
useradd -g mysql mysql 
tar -zxvf mysql-5.0.45.tar.gz 
cd mysql-5.0.45 
./configure –prefix=/usr/local/mysql –with-charset=utf8 –with-collation=utf8_general_ci –with-extra-charsets=latin1 
make 
make install 
cp support-files/my-medium.cnf /etc/my.cnf

启动vim修改my.cnf文件

vim /etc/my.cnf

找到log-bin=mysql-bin这一行,将其注释掉:#log-bin=mysql-bin

cd /usr/local/mysql 
bin/mysql_install_db --user=mysql 
chown -R root . 
chown -R mysql /usr/local/mysql/var 
chgrp -R mysql .

启动MySQL:

bin/mysqld_safe --user=mysql & 
让mysql随系统一起启动:

使用vi编辑器,对/etc/rc.local文件进行编辑

vi /etc/rc.local

在exit 0前面加上

/usr/local/mysql/bin/mysqld_safe --user=mysql & 
重启服务器,验证mysql是否能随系统正常启动,启动后: 
mysql 
如果能直接进入则说明启动成功。 
为了安全,修改root密码: 
mysql>use mysql 
mysql>UPDATE user SET password=PASSWORD('new_password') WHERE user='root'; 
mysql>FLUSH PRIVILEGES; 
mysql>exit

posted @ 2010-12-01 15:57 lexus 阅读(405) 评论(0) 编辑

mysql install

LINUX上安装MYSQL5.1

linux version:

Linux version 2.6.18-6-xen-vserver-686 (Debian 2.6.18.dfsg.1-24) (dannf@debian.org) (gcc version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)) #1 SMP Sat Dec 27 13:50:55 UTC 2008

MYSQL version

mysql-5.1.33-linux-i686-glibc23.tar.gz

安装成功。

执行service mysqld restart
Shutting down MySQL..
Starting MySQL......
debian:/usr/local#

成功。

debian:/var/run/mysqld# mysql -u root -p
Enter password:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (111)
debian:/var/run/mysqld# chown -R mysql /var/run/mysqld/

苦思不得其解。查看my.cnf,截取部分如下

# The following options will be passed to all MySQL clients
[client]
#password       = your_password
port            = 3306
socket          = /tmp/mysql.sock
# Here follows entries for some specific programs
# The MySQL server
[mysqld]
port            = 3306
socket          = /tmp/mysql.sock
skip-locking
key_buffer = 16M
max_allowed_packet = 1M
table_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M

那么问题肯定出在socket这里了。这里对应的是/tmp/目录,查看/tmp/目录下面,有mysql.sock。尝试/tmp下用ln创建软 连接mysqld.sock到/var/run/mysql/mysqld.sock.restart service ,无果。于是尝试在/var/run/mysql/创建软连接到/tmp/mysql.sock。restart service 也无果。google了一下。发现很多类似情况,照搬过来,It does not work too.看来还是回到开始,问题肯定是处在socket上,更改my.cnf里的socket路径为/var/run/mysql /mysqld.sock,直接在改路径下创建一个mysqld.sock。重启mysql。成功了

posted @ 2012-02-24 13:35  feiling  阅读(340)  评论(0编辑  收藏  举报