Mysql 5.6版本二进制安装
admin
2023-04-26 09:21:57
0

时间:2018.7.30
作者:李强
参考:man,info,magedu讲义,万能的internet
实验环境:VMware® Workstation 12 Pro ,Centos 6.9,Centos 7.4,SecureCRT Version 8.1.4
声明:以下英文纯属个人翻译,英文B级,欢迎纠正,以下内容纯属个人理解,并没有对错,只是参考,盗版不纠,才能有限,希望不误人子弟为好。
版本:v1-2018.7.30

参考资料

1、https://www.cnblogs.com/BrightMoon/p/4730081.html
2、https://dev.mysql.com/doc/refman/5.6/en/installing.html

官方下载站点:

https://dev.mysql.com/downloads/mysql/

可以下载rpm包,repo仓库。二进制包等

一些镜像站点如搜狐,阿里,网易等都不好使了。

mysql安装为什么大部分使用二进制安装。而不是源码手动去编译?

mysql使用的glibc进行开发的。glibc库是一个底层api,所以只要是linux,都会有glibc库。所以,mysql安装不需要考虑环境是否符合要求。移植性很方便。直接将编译好的二进制代码复制到另外一个机器上,也是可以用的。

原理性东西:一般在linux下安装一个软件,不同软件所需要的函数库不同。于是会遇到一个现象:一个软件复制到另外一个平台可能无法运行。安装软件需要先侦测环境就是出于此考虑。因为mysql使用的是通用的glibc函数库。没有对其他东西的依赖性。所以,从一个平台复制到另外一个平台能够通用。并不需要去侦测环境。直接使用编译好的二进制即可

手动编译安装,显得步骤麻烦。基于mysql的特点,二进制安装完全可以。

注:mysql5.5安装的时候,需要用到cmake命令,所以需要保证你的机器上安装了该命令。没有的话,还要去安装该cmake。也显得麻烦。我暂时不想去安装最新版本的了。

如果使用二进制安装升级怎么进行?

升级获取的还是二进制压缩包。那么,直接将指向目录切换到新的目录即可。

不需要涉及到像php一样,手动编译可以达到自己定制模块的好处。而mysql安装的时候不需要涉及到模块

mysql官方建议安装方式:二进制安装。

以下为安装二进制版本5.6.41操作步骤

一、安装前环境准备:

1、依赖库检查

主要是看二进制安装依赖的库是否存在,数据库初始化和服务启动需要此库

shell> yum search libaio  # search for info
shell> yum install libaio # install library

2、安装相关规划

    软件安装目录      /usr/loca/app/mysql_13306
    数据库存放目录  /data/mysql_13306
    port                     13306
    pid_file                /data/mysql_13306/mysql_13306.pid
    socket                 /data/mysql_13306/mysql_13306.socket
    log_error             /var/log/mysql_13306.log

二、进制安装步骤

1、创建用户

shell> groupadd mysql
shell> useradd -r -g mysql -s /bin/false mysql

2、下载二进制包

shell> cd /usr/local/app
shell> wget https://cdn.mysql.com//Downloads/MySQL-5.6/mysql-5.6.41-linux-glibc2.12-x86_64.tar.gz
shell> tar zxvf mysql-5.6.41-linux-glibc2.12-x86_64.tar.gz
shell> mv mysql-5.6.41-linux-glibc2.12-x86_64 mysql_13306
shell> ln -s  mysql_13306  ../mysql_13306
# 我觉得建立软链接其实作用就是因为默认的路径就是这里。当我们安装多实例的时候,这个步骤就没有意义了。
shell>cd /usr/local/app/mysql_3306
shell> rm -rf data
shell> ln -s data /data/mysql_13306

3、为工作目录指定用户权限

shell> cd mysql_13306
shell> scripts/mysql_install_db --user=mysql   #这里可以指定mysql安装和安装数据的位置。 
# --basedir=path 使用mysqld程序的路径 --datadir=path  数据库安装的路径
#此脚本,默认执行的是
#./bin/mysqld --bootstrap --basedir=. --datadir=/var/lib/mysql --log

shell> chown -R root .
shell> chown -R mysql /data/mysql_13306
# 数据库数据位置需要拥有mysql的权限。不能设置为root权限。否则无法启动。
shell> scripts/mysql_install_db --user=mysql --basedir=/usr/local/app/mysql_13306 --datadir=/usr/local/app/mysql_13306/data
To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:

  /home/ewifi/mysql/bin/mysqladmin -u root password 'new-password'
  /home/ewifi/mysql/bin/mysqladmin -u root -h ewifi-yuhang password 'new-password'

Alternatively you can run:

  /home/ewifi/mysql/bin/mysql_secure_installation

which will also give you the option of removing the test
databases and anonymous user created by default.  This is
strongly recommended for production servers.

See the manual for more instructions.

You can start the MySQL daemon with:

  cd . ; /home/ewifi/mysql/bin/mysqld_safe &

You can test the MySQL daemon with mysql-test-run.pl

  cd mysql-test ; perl mysql-test-run.pl

Please report any problems at http://bugs.mysql.com/

The latest information about MySQL is available on the web at

  http://www.mysql.com

Support MySQL by buying support/licenses at http://shop.mysql.com

New default config file was created as /home/ewifi/mysql/my.cnf and
will be used by default by the server when you start it.
You may edit this file to change server settings

WARNING: Default config file /etc/my.cnf exists on the system
This file will be read by default by the MySQL server
If you do not want to use this, either remove it, or use the
--defaults-file argument to mysqld_safe when starting the server

/home/ewifi/mysql/bin/mysqld_safe --defaults-file=/home/ewifi/mysql/my.cnf &

4、修改配置文件指定mysql的安装目录和数据目录


执行完安装数据库脚本后,会在安装路径下自动生成my.cnf配置文件。
主要设置参数,在mysqld下配置。
[mysqld]  

user =mysql                                 //以mysql用户权限运行mysql服务
baseurl=/usr/loca/app/mysql_13306       //mysql二进制程序路径,默认为当前程序的./bin/mysqld
dataurl=/data/mysql_13306/        //mysql数据库存放路径, 默认为/var/lib/mysql

因为我们可能根据自己的数据安全,放在其他位置,可以将二进制里的data目录删除,然后建立一个软链接过去。然后设置data的属性为mysl.mysql

port=13306
socket=/data/mysql_13306/mysql_13306.socket         //socket文件,默认路径为/var/lib/mysql/mysql.sock
pid-file=/var/run/mysql_13306.pid        //如果没有指定,那么默认为$datadir/`hostname`.pid
[mysqld_safe]
log-error=/var/log/mysql_13306.log   

5、启动服务器

shell> bin/mysqld --user=mysql &           # 或使用mysqld_safe
shell> bin/mysqld_safe --user=mysql  --defaults-file=/usr/loca/app/mysql_13306/my.cnf & # 官方建议使用这个

#启动可以用mysqld也可以使用mysqld_safe,区别简单点就是mysqld_safe比mysql更安全,因为mysqld_safe启动后会监控mysql服务状态做到自动重启mysql服务的功能,本质上用到的还是mysqld程序。
#如果安装目录和数据库目录改变,添加相关参数

6、添加启动脚本。

# Next command is optional
shell> cp support-files/mysql.server /etc/init.d/mysql_13306.server

如果修改了baseurl和dataurl的位置,这里需要对这2个变量进行赋值
这里调用的就是mysqld_safe 

注意事项

1、不同版本的安装方式不一样。需要参考官方安装指导手册
2、自定义的路径,需要修改相关文件的相关变量。官方上是默认路径。

相关内容

热门资讯

卫生间水管布置图尺寸高度 卫生间的水管布置可能比较复杂一些,因为卫生间的管道比较多。比如有热水器的通水管道,有座便器的冲水管道...
电脑尺寸在哪里看 电脑尺寸在哪里看1、可以选择手工测量法来测量电脑尺寸,这时测量一下屏幕对角线,因为显示面积都会小于显...
电脑机箱尺寸标准 常规的机箱一般是立体式,或桌面式,再就是横式。电脑机箱尺寸,目前市面上根据不同的规格有不同的方案。 ...
斯塔默发声:不会辞职 【环球时报驻英国特约记者 纪双城 环球时报特约记者 甄翔 于文】执政党工党在英国地方选举中遭遇“历史...
抽油烟机管道有异味怎么办 抽油烟机是厨房中不可或缺的设备,它能有效地排出油烟,保证室内空气的清新。但是,长时间使用后,抽油烟机...
抽油烟机管道有油垢怎么办 抽油烟机管道是我们家庭生活中必不可少的设备,但长时间的使用会导致管道内部积累大量的油垢,如不及时清理...
沈伯洋与台北市长格局有落差,叶... 海峡导报综合报道 民进党将正式拍板征召民代沈伯洋出战台北市长,并发布采访通知,预计在13日下午举行台...
核查:上世纪已有多款汉坦疫苗上... 明查员 冯梦速览- 人类感染汉坦病毒已有数十年历史。朝鲜战争期间,联合国军就曾有过大规模感染。汉坦病...
如何从“一证在手”走向“一技傍... 教员在给学员讲解理论知识。 学员在进行无人机试飞训...
内蒙古自治区党委金融工作委员会... 内蒙古自治区党委金融工作委员会副书记马保国涉嫌严重违纪违法,目前正接受内蒙古自治区纪委监委纪律审查和...