在Linux 中搭建 Mysql

  在本次搭建,出现了各种问题,一直解决不掉,建议各位小伙伴不要像我一样,像一个无头的苍蝇一样,这有问题就解决这个问题,没有意识本质实在的问题。

  主要问题(加星,标重点):一定要看自己的linux 版本,不要随便下载一个mysql 就直接安装,安装到最后,也运行不出来,因为二进制执行程序压根就不给用。例如:mysqld ,显示 not found 。以下是正确的安装方法:

  一、查看自己的linux 操作系统是几位的,根据自己的系统位数下载相应的Mysql 软件 ,我的linux 是64位。

    # uname -i

    

  二、下载好安装包,我是在培训资料上下载的:mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz,文件扩展名是tar.gz

  

  然后将在windows 下载好的软件,复制到虚拟机桌面上,文件名是tar.gz,显然是用tar 和gzip 进行压缩的。

  三、解压,复制进去之后,将文件进行解压,用命令:tar zxvf mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz,解压出来之后就有一个文件夹,移动解压完的目录并更改名字为mysql。再将文件移动,判断/usr/local路径中原本是否相同的文件夹,用命令进行更改为其它的名字后再将mysql 文件夹移到该路径中:

   # cd 桌面

   # && mv /usrlocal/mysql /usr/local/mysql_old 

   # mv mysql-5.6.35-linux-glibc2.5-x86_64 /usr/local/mysql

   四、建立MySQL用户,启动mysql需要该用户:

      # useradd -s /sbin/nologin mysql

       # cd /usr/local/mysql

         创建datadir,数据库文件会放到这里:

      # mkdir -p data/mysql

    更改权限,否则后面会报错:

      # chown -R mysql:mysql data/mysql

    进行初始化,指定用户为mysql,指定数据存放路径/usr/local/mysql/data/mysql

      # ./scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data/mysql

            

      

      可以看到,上面出现了两个OK,这就说明初始化成功。如果没有成功,可能是因为有些东西没有安装,第一时间,去百度出现ERROR 的地方。例如:c 与 gcc 未安装、“please install the following Perl modules before executing ./scripts/mysql_install_db: Data::Dumper”、”The parent directory for the data directory '/data/mysql' does not exist.If that path was really intended, please create that directory path and thenrestart this script.“等。

     解决方法:1、出现:“please install the following Perl modules before executing ./scripts/mysql_install_db: Data::Dumper”,用以下命令进行在线安装(记得联网)

            先查查:

            # yum list |grep perl | grep -i Dumper 

            

             不知道的情况下,可以一个个去安装上面的包,这里我们知道是第一个,使用yum安装

           # yum install -y perl-Data-Dumper.x86_64  

           再次初始化:# ./scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data/mysql

           2、出现:”The parent directory for the data directory '/data/mysql' does not exist.If that path was really intended, please create that directory path and thenrestart this script.“,是提示没有这样的目录或文件,我们需要在data/mysql前面加上绝对路径:# ./scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data/mysql  。

          3、提示没有libaio.so.1 ,没有就安装:# yum install -y libaio*

           再次初始化:# ./scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data/mysql

       检验一下:# echo $?   ,输出为0,说明上一条命令已经正确执行。

    五、配置Mysql ,初始化完成之后,接下来就是配置(划重点:路径要一模一样,不然最后启动不了,mysqld 命令报错)。

      首先复制配置文件:# cp support-files/my-default.cnf /etc/my.cnf

       

      打开配置文件,做以下修改:

       

      然后复制启动脚本文件,并修改启动脚本文件的属性:

       # cp support-files/mysql.server /etc/init.d/mysqld

      #  chmod 755 /etc/init.d/mysqld

      #  vim /etc/init.d/mysqld

      

       接下来将启动脚本加入系统服务项并设置开机启动:

          # chkconfig --add mysqld

          # chkconfig mysqld on

      最后启动服务:# service mysqld start

      

       启动成功!!!上面已经启动成功,如果没有成功启动,我们也可以到/usr/local/mysql//data/mysql目录下查看错误日志。

      检查是否启动成功,命令:# ps aux |grep mysqld

      

       停止MySQL服务:# service mysqld stop    停止之后,可以用上一个命令再次查看是否在运行,没有Mysql 即表示关闭成功。

      还可以以命令行的方式启动脚本,--defaults-file指定配置文件,指定用户,指定目录,最后加上&符号,放到后台执行。以命令行的方式启动的mysql脚本不能直接stop,可以使用killall停止服务。命令如下:

         # /usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --user=mysql --datadir=/data/mysql &

最后,安装完成!!!!!开心,一个星期才解决,因为这个安装不上,影响php 的安装,所以,我的学习进度变的很慢。

       

     

原文地址:https://www.cnblogs.com/zblock/p/12037401.html