在Ubuntu上以tarball方式安装MySQL(mysql-5.5.14-linux2.6-x86_64.tar.gz)

        今天第一次自己装MySQL。意料之内地,有些地方出了问题,于是google解决问题。现在将整个安装过程(步骤、遇见的问题等)记录在这里,当作备份。其中,大部分内容来自MySQL官方网站。

        首先,从MySQL官方网站上下载所对应的MySQL版本。进入http://dev.mysql.com/downloads/mysql后选择相应的版本,此处为mysql-5.5.14-linux2.6-x86_64.tar.gz(64位)。

        然后,正式进入安装程序。

1.  mysqld增加一个登录用户和组(关于用户和用户组,请参见http://fedora.linuxsir.org/main/?q=node/91):

2.  shell> groupadd mysql

3.  shell> useradd -g mysql mysql

这些命令将增加MySQL组和MySQL用户。不同版本的Unix中,useraddgroupadd的语法可能会稍有不同。还可以称为adduseraddgroup你可能会将这些用户和组命名为mysql之外的名称。如果是这样,在下面的步骤中替换为相应的名称。这个步骤可以在任意路径下进行,与tarball文件没有关系。之后的操作应该会需要root权限,因此需要在操作命令前添加sudo,以便以超级用户身份进行操作。

4.  解压tarball文件mysql-5.5.14-linux2.6-x86_64.tar.gz复制到/usr/local下。

5.  在下面的例子中,我们将该tarball文件解压在“/usr/local”下(因此,下列说明假设你有权限在“/usr/local”中创建文件和目录,如果该目录被保护,你需要以root实施安装)

6. shell> cd /usr/local

(2.1.3节,“怎样获得MySQL”中列出的站点之一获得一个分发文件。对于一个给定的版本,所有平台的二进制分发版均从相同的MySQL源码分发版构建。)

7.  解包分发版,将创建安装目录。然后生成到该目录的一个符号链接:

8.  shell> sudo tar zxf mysql-5.5.14-linux2.6-x86_64.tar.gz

9.  shell> sudo ln -s /usr/local/mysql-5.5.14-linux2.6-x86_64 mysql

此命令将创建一个软链接并将其命名为mysql。也就是说,mysql是一个链接到/usr/local/mysql-5.5.14-linux2.6-x86_64的链接,之后就可以通过mysql对/usr/local/mysql-5.5.14-linux2.6-x86_64进行访问,类似于Windows中的快捷方式。

10.  shell> cd mysql

通过上一步建立的软链接mysql进入/usr/local/mysql-5.5.14-linux2.6-x86_64。你会在该目录下发现几个文件和子目录,对安装目的最重要的是“bin”和“scripts”子目录。

bin:这个目录包含客户端程序和服务器,你应该把这个目录的完整路径加到PATH环境变量,以便shell能正确的找到MySQL程序。请参见附录F:环境变量

scripts:这个目录包含mysql_install_db脚本,用来初始化mysql数据库的 授权表,其中贮存了服务器访问允许。

11.  如果还没有安装MySQL,必须创建MySQL授权表:

12. shell> sudo scripts/mysql_install_db --user=mysql

如果你用root运行命令,应当使用--user选项。选项的值应与你在第一步为运行服务器所创建的登录账户相同。如果你用该用户登录来运行命令,可以省略--user选项。(Create the mysql database, privilege tables, and the func table)

创建或升级授权表后,需要手动重新启动服务器。

在这一步中,最容易出现错误。

1) 错误一:

This command gives the following error:
FATAL ERROR: Could not find mysqld

The following directories were searched:

/usr/libexec
/usr/sbin
/usr/bin

解决办法:将目录/etc/mysql下的my.cnf文件删除,即输入命令:sudo rm /etc/mysql/my.cnf。

2) 错误二:

mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

解决办法:这是由于缺少libaio.so包所导致的,因此安装该包即可。可以通过Synatpic Package Manager安装libaio-dev。也可以apt-get安装,即:sudo apt-get install libaio1。我用的是第一种方法,即:直接在Synatpic Package Manager中搜索libaio-dev,然后将其安装。之后,如果不放心,可以用指令find / -name libaio* -print 进行查看该包是否安装,一般来说通过Synatpic Package Manager安装对话,不会有问题;由于没有用第二种方法,不敢在此随意断言,但是应该也不会有什么问题。

13.  将程序二进制的所有权改为root数据目录的所有权改为运行mysqld 的用户。如果位于安装目录(/usr/local/mysql)下,命令应为:

14.  shell> sudo chown -R root  .

此命令将文件的所有属性改为root用户。

15.  shell> sudo chown -R mysql data

此命令将数据目录的所有属性改为mysql用户。

16.  shell> sudo chgrp -R mysql .

此命令将组属性改为mysql组。

17.sudo cp support-files/my-medium.cnf /etc/my.cnf

如果你喜欢在引导机器时自动启动MySQL,可以拷贝support-files/mysql.server文件到系统有启动文件的地方。更多的信息可以在support-files/mysql.server脚本中和2.9.2.2节,“自动启动和停止MySQL”中找到。此命令为optional。

18.  然后,初始化并且测试

可以用下列命令启动MySQL服务器:

shell> sudo bin/mysqld_safe --user=mysql &

关于mysqld_safe的详细信息参见5.1.3节,“mysqld_safe:MySQL服务器启动脚本”

---------------------------------------------------------------------------------------------------------------------------

原文:http://dev.mysql.com/doc/refman/5.1/en/binary-installation.html

其他参考:http://www.devside.net/guides/linux/mysql

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值