Home > Database > Mysql Tutorial > Linux安装mysql源码安装

Linux安装mysql源码安装

WBOY
Release: 2016-06-07 15:46:38
Original
1028 people have browsed it

1.假设已经有mysql-5.5.10.tar.gz以及cmake-2.8.4.tar.gz两个源文件 (1)先安装cmake(mysql5.5以后是通过cmake来编译的) [root@ rhel5 local] # tar -zxv -f cmake-2.8.4.tar.gz [root@ rhel5 local] # cd cmake-2.8.4 [root@ rhel5 cmake-2.8.4] # ./confi

1.假设已经有mysql-5.5.10.tar.gz以及cmake-2.8.4.tar.gz两个源文件

(1)先安装cmake(mysql5.5以后是通过cmake来编译的)

[root@ rhel5 local]<span>#</span><span>tar -zxv -f cmake-2.8.4.tar.gz</span>[root@ rhel5 local]<span>#</span><span>cd cmake-2.8.4</span>[root@ rhel5 cmake-2.8.4]<span>#</span><span>./configure</span>[root@ rhel5 cmake-2.8.4]<span>#</span><span>make</span>[root@ rhel5 cmake-2.8.4]<span>#</span><span>make install</span>
Copy after login


(2)创建mysql的安装目录及数据库存放目录

[root@ rhel5~]<span>#</span><span>mkdir -p /usr/local/mysql                 //安装mysql </span>[root@ rhel5~]<span>#</span><span>mkdir -p /usr/local/mysql/data            //存放数据库</span>
Copy after login

(3)创建mysql用户及用户组

[root@ rhel5~]groupadd mysql
[root@ rhel5~]useradd -r -g mysql mysql
Copy after login

(4)安装mysql

Linux安装mysql源码安装

[root@ rhel5 local]<span>#</span><span>tar -zxv -f mysql-5.5.10.tar.gz</span>[root@ rhel5 local]<span>#</span><span>cd mysql-5.5.10</span>[root@ rhel5 mysql-5.5.10]<span>#</span><span>cmake . </span>-DCMAKE_INSTALL_PREFIX=/usr/local/mysql
-DMYSQL_DATADIR=/usr/local/mysql/data
-DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=utf8_general_ci 
Copy after login
-DEXTRA_CHARSETS=all 
-DENABLED_LOCAL_INFILE=1
[root@ rhel5 mysql-5.5.10]<span>#</span><span>make</span>[root@ rhel5 mysql-5.5.10]<span>#</span><span>make install</span>
Copy after login

Linux安装mysql源码安装

参数说明:

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql        //安装目录

-DINSTALL_DATADIR=/usr/local/mysql/data         //数据库存放目录

-DDEFAULT_CHARSET=utf8                        //使用utf8字符

-DDEFAULT_COLLATION=utf8_general_ci            //校验字符

-DEXTRA_CHARSETS=all                            //安装所有扩展字符集

-DENABLED_LOCAL_INFILE=1                        //允许从本地导入数据

 

注意事项:

重新编译时,需要清除旧的对象文件和缓存信息。

# make clean

# rm -f CMakeCache.txt

# rm -rf /etc/my.cnf

2.配置

(1)设置目录权限

[root@ rhel5~]<span>#</span><span> cd /usr/local/mysql</span>
[root@ rhel5 mysql]<span>#</span><span> chown -R root:mysql . //把当前目录中所有文件的所有者所有者设为root,所属组为mysql</span>
[root@ rhel5 mysql]<span>#</span><span> chown -R mysql:mysql data</span>
Copy after login

(2)

[root@ rhel5 mysql]<span>#</span><span> cp support-files/my-medium.cnf /etc/my.cnf //将mysql的启动服务添加到系统服务中</span>
Copy after login



(3)创建系统数据库的表

[root@ rhel5 mysql]<span>#</span><span> cd /usr/local/mysql</span>[root@ rhel5 mysql]<span>#</span><span> scripts/mysql_install_db --user=mysql</span>
Copy after login

(4)设置环境变量

Linux安装mysql源码安装

[root@ rhel5~]<span>#</span><span> vi /root/.bash_profile</span>
在PATH=<span>$PATH</span>:<span>$HOME</span>/bin添加参数为:

PATH=<span>$PATH</span>:<span>$HOME</span>/bin:/usr/local/mysql/bin:/usr/local/mysql/lib

[root@ rhel5~]<span>#</span><span>source /root/.bash_profile</span>
Copy after login

Linux安装mysql源码安装

(5)手动启动mysql

Linux安装mysql源码安装

[root@ rhel5~]<span>#</span><span> cd /usr/local/mysql</span>
[root@ rhel5 mysql]<span>#</span><span> ./bin/mysqld_safe --user=mysql &   //启动MySQL,但不能停止</span>
启动日志写在此文件下:/usr/local/mysql/data/localhost.err

关闭MySQL服务

[root@ rhel5 mysql]<span>#</span><span> mysqladmin -u root -p shutdown  //这里MySQL的root用户还没有配置密码,所以为空值。需要输入密码时,直接点回车键即可。</span>
Copy after login

Linux安装mysql源码安装

(6)另一种简单的启动mysql的方法(mysql已经被添加到系统服务中)

[root@ rhel5~]<span>#</span><span> service mysql.server start  </span>[root@ rhel5~]<span>#</span><span> service mysql.server stop</span>[root@ rhel5~]<span>#</span><span> service mysql.server restart</span>
Copy after login

如果上述命令出现:mysql.server 未识别的服务

则可能mysql还没添加到系统服务中,下面用另一种方法添加:

[root@ rhel5 mysql]# cp support-files/mysql.server  /etc/init.d/mysql <span>//</span><span>将mysql的启动服务添加到系统服务中</span>
Copy after login

注意:主要是将mysql.server拷贝到/etc/init.d中,命名为mysql。在有的系统中,mysql.server在/usr/local/mysql/share/mysql/mysql.server中,而本系统中,mysql.server在/usr/local/mysql/support-files/mysql.server中。

然后再用#service mysql start 来启动mysql即可。


(7)修改MySQL的root用户的密码以及打开远程连接

Linux安装mysql源码安装

[root@ rhel5~]<span>#</span><span> mysql -u root mysql</span>
mysql>use mysql;
mysql>desc user;
mysql> GRANT ALL PRIVILEGES ON *.* TO root@<span>"</span><span>%</span><span>"</span> IDENTIFIED BY <span>"</span><span>root</span><span>"</span>;  //为root添加远程连接的能力。
mysql>update user set Password = password('xxxxxx') where User='root';
mysql>select Host,User,Password  from user where User='root'; 
mysql>flush privileges;
mysql>exit

重新登录:mysql -u root -p

若还不能进行远程连接,则关闭防火墙
[root@ rhel5~]<span>#</span><span> /etc/rc.d/init.d/iptables stop</span>
Copy after login

Linux安装mysql源码安装

注:如果不能远程连接,出现错误mysql error number 1130,则加入下面语句试试:

mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '******' WITH GRANT OPTION;

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template