Linux下搭建MySQL

图片 15

1.在安装mysql数据库服务器前,确保你的linux系统是可以连接网络的,下面我们将通过源码方式来安装mysql,首先确保系统中已经安装的gcc
c++
等编译环境,因为mysql从5.5版本开始是使用cmake编译的,如果三个环境都没安装,可以使用下面的命令进行安装:

   yum -y install make gcc-c++ cmake bison-devel ncurses-devel

2.查找系统里是否已经安装了mysql数据库的相关组件,使用命令:rpm -qa |
grep mysql

   如果查找到,可以使用下面命令进行强制卸载:rpm -e –nodeps 包名

3.请在当前登录用户的用户目录下(cd 回车)下载mysql的源码安装包

   命令:wget
–no-check-certificate 
(没有–no-check-certificate命令会报错)

  图片 1

 

4.下载完成后,使用命令: ls 可以查看当前目前下存在  mysql-5.6.24.tar.gz

 图片 2

5.解压,命令:tar -zxvf mysql-5.6.24.tar.gz 或者 tar -zxf
mysql-5.6.24.tar.gz (-zxvf可以看到解压过程,-zxf省略了解压过程)

6.跳转到解压好的mysql目录里,命令:cd mysql-5.6.24

7.开始编译mysql文件,首先配置编译的相关参数

   命令:cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
-DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc
-DWITH_MYISAM_STORAGE_ENGINE=1
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1
-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock
-DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1
-DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all
-DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci

  图片 3

8.接着使用 make && make install 来编译并安装mysql

图片 4

9.安装完成后,我们还要建立mysql的配置,首先设置mysql的访问权限,使用命令查看是否已经存在mysql用户及用户组

   跳转到用户目录:cd ~

   查看用户列表命令:cat /etc/passwd 

图片 5

   查看用户组列表命令:cat /etc/group

图片 6

10.如果不存在,我们就要创建:

   添加用户组命令:groupadd mysql

   添加用户:useradd -g mysql mysql

   然后来修改之前安装的mysql所在目录的访问的用户及用户组输入命令:chown
-R mysql:mysql /usr/local/mysql

图片 7

11.然后是初始化mysql配置

   切换到mysql安装目录:cd /usr/local/mysql

 
 执行初始化配置脚本,创建mysql自带的系统数据库:./scripts/mysql_install_db
–basedir=/usr/local/mysql –datadir=/usr/local/mysql/data –user=mysql

图片 8

   注意:这个地方可能会出错

  当输入./scripts/mysql_install_db –basedir=/usr/local/mysql
–datadir=/usr/local/mysql/data –user=mysql这个命令后

图片 9

 
会出现上面的错误,原因:不能解析本机主机名!注意红框里的内容,应该是你创建linux时修改的主机名,默认的好像是localhost.localdomain,当然,你搭建linux时没有改动默认主机名,是不会出现这个错误的。

  解决方法:vim /etc/hosts
 然后将红框里你自己起的主机名添加到每行的最后,如下图

 图片 10

  补充完,重新执行一次./scripts/mysql_install_db
–basedir=/usr/local/mysql –datadir=/usr/local/mysql/data –user=mysql

12.修改mysql配置文件

    输入命令:vi my.cnf  

    在文件中添加如下内容:basedir = /usr/local/mysql

                                   datadir = /usr/local/mysql/data

                                   port = 3306

                                   server_id = 1

                                   socket = /var/lib/mysql/mysql.sock

 图片 11

    这一步很重要,需要更改该配置文件的所有者:chown -R mysql:mysql
/usr/local/mysql/my.cnf  否则下面启动mysql服务会报错;

   
注意:注:在启动MySQL服务时,会按照一定次序搜索my.cnf,先在/etc目录下找,找不到则会到你安装的mysql目录找,在本例中就是
/usr/local/mysql/my.cnf。注意:在CentOS
6.4版操作系统的最小安装完成后,在/etc目录下会可能会存在一个my.cnf,需要将此文件更名为其他的名字,如:/etc/my.cnf.bak,否则,该文件会干扰源码安装的MySQL的正确配置,造成无法启动。 重命名的命令是:mv
my.cnf my.cnf.bak

13.添加mysql到开机启动项,并启动mysql服务

    cp support-files/mysql.server /etc/init.d/mysqld    #复制脚本

    chmod +x /etc/init.d/mysqld    #增加可执行权限

    chkconfig –add mysqld    #增加至sysV服务 

    chkconfig mysqld on    #开机自启动

    service mysqld start #启动mysql服务

    netstat -aux|grep mysq #查看启动的mysql进程

图片 12

    注意:

    service mysqld start  #启动mysql服务 如果报如下错:

    Starting MySQL…The server quit without updating PID file [失败]local/mysql/data/localhost.learn.pid).

    解决方法之一:

    此时:ps -ef | grep mysql  看是否进程里已经存在mysql进程

    如果有进程,用kill -9 进程号(第二个位置上的数字)

    然后再service mysqld start 启动mysql

    其他方法(没试过):

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

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

  2.可能是第二次在机器上安装mysql,有残余数据影响了服务的启动。
  解决方法:去mysql的数据目录data看看,如果存在mysql-bin.index,就赶快把它删除掉吧,它就是罪魁祸首了。

  3.mysql在启动时没有指定配置文件时会使用/etc/my.cnf配置文件,请打开这个文件查看在[mysqld]节下有没有指定数据目录(datadir)。
  解决方法:请在[mysqld]下设置这一行:datadir =
/usr/local/mysql/data

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

  5.错误日志目录不存在
  解决方法:使用“chown” “chmod”命令赋予mysql所有者及权限

  6.selinux惹的祸,如果是centos系统,默认会开启selinux
  解决方法:关闭它,打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器试试。

14.添加mysql的环境变量,以方便以后的操作输入密码

    命令:vi /etc/profile

    在文件的底部添加如下内容:PATH=/usr/local/mysql/bin:$PATH

                                        export PATH

    保存退出

    输入命令,使配置立即生效:source /etc/profile

图片 13

15.安装好的mysql,默认root帐户帐户为空,下面我们来修改密码输入命令:mysql
-uroot
回车后,然后输入命令:SET PASSWORD =
PASSWORD(‘123456’);
设置完成后,输入命令:quit; 退出mysql环境;

 图片 14

16.设置好
mysql密码,需要输入如下命令才能够正确登录进mysql:输入命令:mysql -uroot
-p
回车后,会提示你输入密码,输入正确并执行后,会看到以mysql>开始的提示行,在这里你可以输入任何有效的sql查询语句:比如输入:show
databases; 
来显示所有的数据库,注意后面的分号不能丢失,它标识一行命令的结束。至此,恭喜你,mysql安装成功了。

图片 15

 

Leave a Comment.