linux系统下安装64位mysql 5.6的过程

数据库 waitig 391℃ 百度已收录 0评论

一、   linux安装mysql服务分两种安装方法:

①源码安装,优点是安装包比较小,只有十多M,缺点是安装依赖的库多,安装编译时间长,安装步骤复杂容易出错;

②使用官方编译好的二进制文件安装,优点是安装速度快,安装步骤简单,缺点是安装包很大,300M左右。以下介绍linux使用官方编译好的二进制包安装mysql。


二、   工具/原料

mysql-5.6.12-linux-glibc2.5-x86_64.tar.gz

Ubuntu系统


三、       方法和步骤

1.      
Mysql下载地址

http://dev.mysql.com/downloads/file.php?id=413140


2.     解压安装包

进入安装包所在目录,执行命令:

tar-zxvf mysql-5.6.12-linux-glibc2.5-x86_64.tar.gz  


3.      复制解压后的mysql目录到系统的本地软件目录:

执行命令:cp mysql-5.6.12-linux-glibc2.5-x86_64 /usr/local/mysql -r

注意:目录结尾不要加/


4.      添加系统mysql组和mysql用户:

执行命令:groupadd mysql和useradd -r -g mysql mysql


5.      安装数据库:

进入安装mysql软件目录:执行命令 cd /usr/local/mysql

修改当前目录拥有者为mysql用户:执行命令 chown -R mysql:mysql ./

安装数据库:执行命令 ./scripts/mysql_install_db –user=mysql

修改当前目录拥有者为root用户:执行命令 chown -R root:root ./

修改当前data目录拥有者为mysql用户:执行命令 chown -R mysql:mysql data

到此数据库安装完毕


6.      启动mysql服务和添加开机启动mysql服务:

添加开机启动:执行命令cp support-files/mysql.server /etc/init.d/mysqld,把启动脚本放到开机初始化目录

cp /usr/local/mysql5/share/mysql/mysql.server /etc/init.d/mysqld
chkconfig –add mysqld
chkconfig –level 2345 mysqld on

启动mysql服务:执行命令service mysqld start

执行命令:ps -ef|grep mysql 看到mysql服务说明启动成功,如图



7.      修改mysqlroot用户密码,root初始密码为空的:

执行命令:./bin/mysqladmin -u root password ‘密码’


四、  安装过程出现的问题

1) 问题1:

Starting MySQL………….The server quit withoutupdating[失败]ile (/var/lib/mysql/miao.pid)

解决办法汇总:

①   可能是/usr/local/mysql/data/rekfan.pid文件没有写的权限

解决方法 :给予权限,执行 “chown -R mysql:mysql /var/data” “chmod -R 755 /usr/local/mysql/data”  然后重新启动mysqld!

②可能进程里已经存在mysql进程

解决方法:用命令“ps -ef|grep mysqld”查看是否有mysqld进程,如果有使用“kill -9  进程号”杀死,然后重新启动mysqld!

③可能是第二次在机器上安装mysql,有残余数据影响了服务的启动。

解决方法:去mysql的数据目录/data看看,如果存在mysql-bin.index,就赶快把它删除掉吧,它就是罪魁祸首了。本人就是使用第三条方法解决的 !tp://blog.rkfan.com/?p=186

④mysql在启动时没有指定配置文件时会使用/etc/my.cnf配置文件,请打开这个文件查看在[mysqld]节下有没有指定数据目录(datadir)。

解决方法:请在[mysqld]下设置这一行:datadir= /usr/local/mysql/data(我使用此种方法解决的)

⑤.skip-federated字段问题

解决方法:检查一下/etc/my.cnf文件中有没有没被注释掉的skip-federated字段,如果有就立即注释掉吧。

⑥.错误日志目录不存在

解决方法:使用“chown” “chmod”命令赋予mysql所有者及权限

7.selinux惹的祸,如果是centos系统,默认会开启selinux

解决方法:关闭它,打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器试试。


2) 问题2:关于Can’t
connect tolocal MySQL server through socket ‘/tmp/mysql.sock’ (2)
的问题

 [root@miao bin]# ./mysql -u root -p

Enterpassword:

ERROR2002 (HY000): Can’t connect to local MySQL server through socket’/tmp/mysql.sock’ (2)

解决办法ln -s /var/lib/mysql/mysql.sock
/tmp/mysql.sock

就这样,我把这个问题解决了,可是我还是有点迷糊,为什么一定要去找/tmp/mysql.sock这个文件,是不是一开始我就给它ln一个链接就可以解决?这个mysql.sock到底是用来做什么的?于是我就产生了看看这个文件内容的想法,

cat /var/lib/mysql/mysql.sock

提示我,cat:/var/lib/mysql/mysql.sock:没有那个设备或地址

ll /var/lib/mysql/mysql.sock

看到的属性是:

srwxrwxrwx 1 mysqlmysql 0 11-21 14:39 /var/lib/mysql/mysql.sock

个属性引起了我的注意,档案类型标志是s,还真没去了解过这样的类型,到鸟哥的私房菜去找了一下,原来,这个是资料接口档,用我们大陆说的习惯应该是套接 字文件(sockets),这种文件一般用在网络上的资料套接,mysqld守护进程生成了这个文件,其他与mysql相关的程序想使用mysql,估计
就是通过这个文件了。

这种特殊文件即使是最高权限的root用户,也是不能查看不能编辑的,有点像档案标志是p的管道文件。


本文由【waitig】发表在等英博客
本文固定链接:linux系统下安装64位mysql 5.6的过程
欢迎关注本站官方公众号,每日都有干货分享!
等英博客官方公众号
点赞 (0)分享 (0)