一、前期装备工作:
1、首先在官方网站下载http://www.mysql.com/downloads/mysql/,然后在下拉选择框中选择Source Code,选择下载最后一个:
Generic Linux (Architecture Independent), Compressed
TAR Archive
(mysql-5.5.20.tar.gz)
2、安装cmake组件
sudo apt-get install cmake
3、安装libncurses5-dev组件
sudo apt-get install libncurses5-dev
4、安装gcc-c++组件
sudo apt-get install build-essential
5、安装bison组件
sudo apt-get install bison
二、编译安装
在MYSQL5.5的这个版本中,编译工具由原来Autotool转变为cmake,并且MYSQL团队还写了一篇文章Autotools to CMake Transition Guide。本文将要列出的编译参数也可以在该文章找到对应的说明。
sudo groupadd mysql
sudo useradd -r -g mysql mysql
sudo tar -zxf mysql-5.5.20.tar.gz -C /usr/local
cd /usr/local/mysql-5.5.20
sudo cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock -DWITH_DEBUG=0 -DWITH_INNOBASE_STORAGE_ENGINE=1
sudo make
sudo make install
如果前期准备的组件都安装好的话,在编译安装时是不会出问题的,
参数说明:
参数迷名称 | 说明 |
DCMAKE_INSTALL_PREFIX | 安装路径 |
DMYSQL_DATADIR | 数据库路径 |
DDEFAULT_CHARSET | 默认字符 |
DDEFAULT_COLLATION | 默认字符集 |
DMYSQL_UNIX_ADDR | 连接数据库socket路径 |
DWITH_DEBUG | 表示是否开启debug模式,bool值 |
三、配置
当安装完毕后,我们还需要对它进行相应的配置。
cd /usr/local/mysql
sudo chown -R mysql .
sudo chgrp -R mysql .
sudo ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --no-defaults
一定要注意最后的参数,--no-defaults,一定要加上。如果没有该参数的话,程序则会自动载入默认的配置文件,而目前你还没有完成配置文件的编写,因此很可能会出错。
当配置完成后,为了安全性的考虑,需要修改权限。
sudo chown -R root .
sudo chown -R mysql data
接下来,我们将配置my.cnf文件。首先应该知道MYSQL寻找配置文件的顺序。最开始搜索的位置是/etc/my.cnf,然后是/etc/mysql/my.cnf。因此我们需要将配置文件放到以上两个位置的其中一个。
sudo cp ./support-files/my-medium.cnf /etc/my.cnf
配置my.cnf信息:
找到mysqld对应的地方,将下面的信息追加进去即可。
[mysqld]
user = mysql
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
character-set-server = utf8
将mysql.server拷贝/etc/init.d下:
sudo cp ./support-files/mysql.server /etc/init.d/mysql
启动MYSQL数据库:
sudo /etc/init.d/mysql start
确认MYSQL是否启动成功:
sudo /usr/local/mysql/bin/mysqladmin version
如果您看到以下信息,就说明已经成功了。
/usr/local/mysql/bin/mysqladmin Ver 8.42 Distrib 5.5.20, for Linux on x86_64
Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Server version 5.5.20-log
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /tmp/mysqld.sock
Uptime: 1 min 51 sec
Threads: 1 Questions: 2 Slow queries: 0 Opens: 33 Flush tables: 1 Open tables: 26 Queries per second avg: 0.018
设置软链接:
cd /usr/local/mysql/bin
sudo ln -s /usr/local/mysql/bin/mysql /usr/bin
sudo ln -s /usr/local/mysql/bin/mysqladmin /usr/bin
sudo ln -s /usr/local/mysql/bin/mysqldump /usr/bin
给root用户设置密码:
mysqladmin -u root password '111111'
进入数据库:
mysql -u root -p
提示数据密码,输入正确后,进入MYSQL。大功告成!!!!!
四、设置开机启动MYSQL
sudo sysv-rc-conf
找到mysql的位置,然后将【3】【4】【5】选中即可。
五、MYSQL的基本信息
路径 | 说明 |
/var/run/mysqld | 该目录存放着socket和进程文件 |
/var/lib/mysql | 该目录存放着数据库数据文件,启动、关闭日志,和bin-log |