本文主要讲Linux上mysql源码编译安装。
1.下载mysql源码
登陆mysql官网http://dev.mysql.com/downloads/mysql/,如下图
选择“Archived versions”,进入如下页面:
选择“MySQL Community Server”,进入如下页面:
选择版本与平台,下载源码时,平台选择“Source Code”,下载Linux下的tar.gz源码包即可。
2.安装mysql
2.1 使用rz命令将下载的源码包上传到Linux系统中,并使用命令tar -zxvf mysql-5.0.75.tar.gz解压;
2.2 切换到解压目录mysql-5.0.75/bin目录下,使用命令./configure --prefix=/usr/local/mysql --with-charset=utf8 --localstatedir=/data/mysql/data 对安装参数进行配置,其中--prefix表示安装路径,--with-charset表示采用的字符集,--localstatedir表示数据库文件存放路径,可使用命令./configure -help查看帮助;
2.3 编译:make(mysql 5.5之前的版本使用make编译,之后的版本使用cmake编译);
2.4 安装:make install
3.配置mysql
3.1 将安装目录下的配置文件my-medium.cnf移动到/etc下,并更名为my.cnf,因为初始化数据库与启动mysql服务,会默认到/etc下读取名称为my.cnf文件,此处如果将配置放到其它路径下,则在初始化数据库与启动mysql服务时需要制定配置文件位置
cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf
3.2 创建组与用户:主要用于设置mysql安装目录与数据存储目录的所有者
groupadd mysql
useradd -g mysql mysql
3.3 初始化mysql数据库:Linux环境中,安装好mysql后,还不能直接启动服务,必须先对数据库进行初始化。初始化的工作主要包括:初始化日志、表空间等数据库必须的文件;创建并初始化系统数据库(mysql)。
/usr/local/mysql/bin/mysql_install_db --user=mysql
注:如果my.cnf不在默认目录下,需加上参数 --defaults-file=my.cnf所在路径
3.4 设置目录权限
设置安装目录/usr/local/mysql下的所有文件所属组为mysql,用户为root:chown -R root . &&chgrp -R mysql .
设置mysql数据存储目录的所有文件所属组为mysql,用户为mysql:chown -R mysql . && chgrp -R mysql,原因是mysql默认都是以mysql用户启动的。
3.5 启动数据库:/usr/local/mysql/bin/mysqld_safe --user=mysql & (&表示在后台启动)
3.6登陆数据库:任何用户默认是没有登陆密码的,可使用命令mysql登陆;可以使用命令mysqladmin -uroot password 数据库密码 修改密码,修改root用户密码后,root用户只能使用mysql -uroot -p来登陆,但其他用户还可使用mysql来登陆。如果my.cnf不在默认目录下,登陆时需加参数--defaults-file=my.cnf所在目录
3.7mysql设置为服务:对于设置为服务只要把/usr/local/mysql/share/mysql/mysql.server放到/etc/init.d/下改名为mysqld或链接到mysql.server
mv /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld
或:ln -s /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld
3.8 mysql设置为开机自启动:vim /etc/rc.local添加如下内容:/etc/init.d/mysqld start
mysql安装配置完毕!