IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    linux上二进制部署mysql详细步骤(测试环境常用)

    OurMySQL发表于 2015-11-08 22:09:01
    love 0

    一、简介:

       关于在linux上二进制部署mysql,我其实现在linux已经很熟练了,那是一年前的曲折之路。不过这篇文章还是有参考意义,毕竟测试环境可以再3分钟就弄好mysql服务器.还是很happy的一件事情.之前笔记是参考别人写的,现在重新整理.主要问题是centos和ubuntu上,ubuntu上需要注意的事项等说明。

    二、需求描述:

       搞了一天在linux下安装mysql,实在身心疲惫,不过最终还是成功安装上了,不知道为什么mysql 的rpm包安装起来不好使,rpm主要再redhat系列的linux发行版中,老是有问题。但是编译安装需要安装编译环境和编译比较耗时间.于是决定安装tarball(二进制包)的方式安装mysql。从网页上翻了好久找到了安装方法。

        我用的mysql的版本的是:mysql-5.5.42-linux2.6-x86_64.tar.gz

        在官网上是可以下载到的。但是我一般再国内镜像站下载:http://mirrors.sohu.com/mysql/MySQL-5.5/

        提供一个百度云的下载地址:链接: http://pan.baidu.com/s/1c0qbyzI 密码: 6vt5

    三、前置条件(不是必需):

       0. 按照上面下载地址.准备mysql的二进制包.

        1. 建立mysql用户组,mysql用户,并且把mysql用户加入到mysql用户组中。

        2. 建立mysql用户组:groupadd mysql

        3. 建立mysql用户并加入mysql用户组:useradd mysql -g mysql -p 1234 -s /sbin/nologin -M

        说明:-g 是加入到mysql用户组,-p是设置密码,-s是设置shell,这里设置的是不让其登录,-M就是不建立用户目录。

    四、下面是安装mysql的步骤

       1、把安装文件拷贝到:/usr/local,

    cp mysql-5.5.42-linux2.6-x86_64.tar.gz /usr/local/

       然后到目录/usr/local/下面解压缩文件:

    tar zxf mysql-5.5.42-linux2.6-x86_64.tar.gz

       2、创建软连接:

    ln -s mysql-5.5.42-linux2.6-x86_64 /usr/local/mysql

       注意:链接有两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link),也称为软连接。建立硬链接时,链接文件和被链接文件必须位于同一个文件系统中,并且不能建立指向目录的硬链接。而对软链接,则不存在这个问题。默认情况下,ln产生硬链接。 如果创建软链接需要参数 -s

        3、到软连接mysql目录下,初始化mysql表格,安装 mysql 默认数据库:

    [root@localhost mysql]#cd /usr/local/mysql
    [root@localhost mysql]# scripts/mysql_install_db --user=mysql

       注意:在ubuntu 执行上面的命令时会遇到如下错误:

    [root@localhost mysql]#/usr/local/mysql# scripts/mysql_install_db --user=mysql
    Installing MySQL system tables...
    ./bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

       主要需要缺少libaio1库文件.解决办法 使用sudo apt-get install libaio1:

    [root@localhost mysql]#/usr/local/mysql# apt-get install libaio1
    正在读取软件包列表... 完成

       然后重新执行步骤(最保险的办法.删除了重来)

    [root @localhost mysql]# scripts/mysql_install_db --user=mysql

       控制台打印出:

        Installing MySQL system tables…

        OK

        Filling help tables…

        OK

        …..

        即说明安装成功。

        4、修改目录权限,如下:

    [root@localhost mysql]# cd /usr/local
    [root@localhost local]# chgrp -R mysql mysql-5.5.42-linux2.6-x86_64
    [root@localhost local]# chgrp -R mysql mysql
    [root@localhost local]# chown -R mysql mysql-5.5.42-linux2.6-x86_64/data
    [root@localhost local]# chown -R mysql mysql/data

       5、启动mysql

        到mysql录下:

    [root@localhost mysql]# bin/mysqld_safe --user=mysql --socket=/tmp/mysql.sock --port=3306 &

       这种启动方式,看不出启动效果,因为要继续输入命令查看是否启动成功的话,就会停止数据库。所以赶紧进行第6步

        6、添加到系统自启动,如下:

    [root@localhost local]# cp mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld
    shell> cp support-files/mysql.server /etc/init.d/mysqld

       上面是ubutu的自启动目录

    [root@localhost local]# chkconfig --add mysqld

       7、启动mysql服务进程,如下:

    [root@localhost local]# /etc/init.d/mysqld start

       启动完成赶紧查看mysql状态,命令: /etc/rc.d/init.d/mysqld status,看看MySQL是否已经启动.

        还可以查看一下 3306 端口是否已经在监听:

    [root@localhost local]#netstat -anp|grep LISTEN

       8、给mysql的 root 用户指定密码为”123456″,host为localhost ,如下:

        在目录 /user/local/mysql/下面

    [root@localhost local]#bin/mysqladmin --socket=/tmp/mysql.sock --port=3306 -u root -h localhost password '123456'

       注意:确定你的mysql.sock是不是在/tmp/mysql.sock这里,

        可以vi /etc/my.cnf 查看一下(如果没有my.cnf,可以从mysql/support-files/my-medium.cnf拷贝):

    sorket=/var/lib/mysql/mysql.sock

       这行就指定了mysql.sock的位置。

        在/var/lib中新建mysql(mkdir /var/lib/mysql),将/tmp/mysql.sock 移至/var/lib/mysql中,

        并修改,命令为

    [root@localhost mysql]# bin/mysqladmin --socket=/var/lib/mysql/mysql.sock --port=3306 -u root -h localhost password '123456'

       ok,密码修改成功!

        9、登陆

    [root@localhost mysql]# bin/mysql --port=3306 -u root -p -S /var/lib/mysql/mysql.sock
    Enter password:
    输入 123456
    登陆成功!
    Welcome to the MySQL monitor. Commands end with ; or \g.
    Your MySQL connection id is 2
    Server version: 5.0.51a MySQL Community Server (GPL)
    Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

       注意:如果登录失败,报如下错误的话:

        Can’t connect to local MySQL server through socket’=/var/lib/mysql/mysql.sock’

        可以在启动命令中加入 -h127.0.0.1,即:

    [root@localhost mysql]#bin/mysql -h127.0.0.1 --port=3306 -u root -p -S /var/lib/mysql/mysql.sock

       如果不想使用相对路径登录mysql的话,则可以在/usr/local/bin中建立mysql的一个软连接:

        ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql

        注意使用绝对路径。

        至此,你应该可以正常使用mysql了。快去试试吧!

    猜您喜欢

    • 2015 年 1 月 4 日 -- MySQL 二进制日志格式基础(一)


沪ICP备19023445号-2号
友情链接