设为首页 收藏本站
查看: 686|回复: 1

[经验分享] centos7安装mysql5.7

[复制链接]

尚未签到

发表于 2017-11-13 13:16:13 | 显示全部楼层 |阅读模式
我打算在我的centos7.2上面装一个mysql5.7,我选择编译安装
1 要安装,首先要有安装包,下载去
因为mysql5.7要求boost,所以建议大家尽量选择自带boost的mysql源码包下载来安装,这样就不用麻烦单独安装boost了.我下载的是mysql-boost-5.7.18.tar.gz
[iyunv@python ~]# ll mysql-boost-5.7.18.tar.gz
-rw-r--r--. 1 root root 61612105 11月  9 2017 mysql-boost-5.7.18.tar.gz
2 检查系统有没有安装mysql和boost
[iyunv@python ~]# rpm -qa | grep boost
[iyunv@python ~]# rpm -qa | grep mysql
3 安装mysql所需的一些依赖包
[iyunv@python ~]# yum -y install make gcc-c++ cmake bison-devel  ncurses-devel   bison perl perl-devel perl perl-devel
...........................作为依赖被升级:
  libdb.x86_64 0:5.3.21-20.el7                                   
  libdb-utils.x86_64 0:5.3.21-20.el7                             
  libstdc++.x86_64 0:4.8.5-16.el7                                
完毕!
4 安装了依赖包,就可以开始安装我们的mysql了.
1) 创建mysql用户和组
为了安全起见,mysql用户不登录,而且mysql作为系统服务,指定mysql用户的群组为mysql群组
[iyunv@python ~]# groupadd mysql;useradd -r -g mysql -s /bin/false mysql
useradd 的-r参数是创建系统账号,-g指定用户所属组为mysql,-s /bin/false 指定用户的shell为禁止login,其实这里还可以设置为/sbin/nologin.
/bin/false是最严格的禁止login选项,一切服务都不能用。
/sbin/nologin只是不允许login系统.
当用户配置成/sbin/nologin时,如果再使用该用户ssh到linux操作系统,会提示#This account is currently not available.
当用户配置成/bin/false时,用户不能登录,使用ssh之后不会有任何提示,用户切换不过去.
2) 创建数据目录
[iyunv@python ~]# mkdir -p /data/mysql/data
3) 解压包
[iyunv@python ~]# tar -zxvf mysql-boost-5.7.18.tar.gz
.........................
4) 编译
[iyunv@python mysql-5.7.18]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_BOOST=boost;make;make install
.......................
哎,因为我是用渣配置的虚拟机,编译搞去我一个多小时.
编译安装完成以后,下面我们开始为使用做准备
5) 初始化
把mysql安装目录的所属用户和组改成mysql
[iyunv@python mysql-5.7.18]# cd /usr/local/mysql
[iyunv@python mysql]# pwd
/usr/local/mysql
[iyunv@python mysql]# chown -R mysql .
[iyunv@python mysql]# chgrp -R mysql .
[iyunv@python mysql]#
做好了上面的,就开始初始化了,因为生产环境中,经常会要求开启ssl功能,我这里初始化就开启了
[iyunv@python mysql]# bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/data
2017-11-10T11:41:27.358625Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2017-11-10T11:41:29.728684Z 0 [Warning] InnoDB: New log files created, LSN=45790
2017-11-10T11:41:30.113932Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2017-11-10T11:41:30.796879Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 18512606-c60c-11e7-b780-000c294e66bd.
2017-11-10T11:41:30.924616Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2017-11-10T11:41:30.929250Z 1 [Note] A temporary password is generated for root@localhost: gDqqGu8uer+a
6) 把mysql添加到系统服务
[iyunv@python mysql]# cp support-files/mysql.server /etc/init.d/mysqld
[iyunv@python mysql]# chmod a+x /etc/init.d/mysqld
[iyunv@python mysql]#
7) 替换配置文件:
[iyunv@python support-files]# cp /etc/my.cnf /etc/my.cnf.bak
[iyunv@python support-files]# cp my-default.cnf /etc/my.cnf
my.cnf      my.cnf.bak  my.cnf.d/   
[iyunv@python support-files]# cp my-default.cnf /etc/my.cnf
cp:是否覆盖"/etc/my.cnf"? y
[iyunv@python support-files]#
8) 赋予权限:
[iyunv@python sys]# chown -R mysql.mysql /data/mysql/
[iyunv@python sys]# chown -R mysql.mysql /var/run/mysql/
[iyunv@python sys]# chown -R mysql.mysql /var/lib/mysql/
[iyunv@python sys]# chown -R mysql.mysql /var/log/mysql/
[iyunv@python sys]# chown -R mysql.mysql /data/mysql/
9) 启动mysql:
[iyunv@python sys]# service mysqld start
Starting MySQL.Logging to '/var/log/mysql/mysql.log'.
. SUCCESS!
10) 连接到mysql:
[iyunv@python bin]# mysql -u root -p
Enter password:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
这是由于我们连接数据库使用的主机名参数为“localhost”,或者未使用主机名参数、服务器默认使用“localhost”做为主机名。 使用主机名参数为“localhost”连接mysql服务端时,mysql客户端会认为是连接本机,所以会尝试以socket文件方式进行连接(socket文件连接方式,比“ip:端口”方式效率更高),这时根据配置文件“/etc/mysql.cnf”的路径,未找到相应的socket文件,就会引发此错误。
所以需要让mysql的客户端能找到scoket文件,这个参数在my.cnf文件里面配置
[iyunv@python bin]# vi /etc/my.cnf
# For advice on how to change settings please see
..............................................
[client]
socket = /var/lib/mysql/mysql.sock
[mysql]
socket = /var/lib/mysql/mysql.sock
添加配置后,重启mysql
[iyunv@python bin]# mysql -uroot -p
Enter password:
.................................
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
OK,我的mysql装好了.
下一次装python用的mysqldb



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-406988-1-1.html 上篇帖子: Mysql ERROR 1396 (HY000) 错误的解决办法 下篇帖子: MySQL密码管理、存储引擎及事务

尚未签到

发表于 2017-12-9 20:50:34 | 显示全部楼层
你的my.cnf文件内容是啥啊

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表