mysql5.7在centos上安装
2019独角兽企业重金招聘Python工程师标准>>>
原文地址:http://blog.csdn.net/you23hai45/article/details/50984328
http://blog.csdn.net/gtsina/article/details/78045244
mysql5.7在centos上安装的完整教程以及相关的“坑”
标签: mysqlmysql5.7mysql5.7安装mysql5.7优化mysql优化
2016-11-25 17:03 2447人阅读 评论(3) 收藏 举报
分类:
架构师之路(60)
版权声明:本文为博主原创文章,未经博主允许不得转载。
目录(?)[+]
安装前的准备
Step1: 如果你系统已经有MySQL,如一般centos自带mysql5.1系列,那么你需要删除它,先检查一下系统是否自带mysql
[plain] view plain copy
- yum list installed | grep mysql
Step2: 删除系统自带的mysql及其依赖命令
[plain] view plain copy
- yum -y remove mysql-libs.x86_64
Step3: 给CentOS添加rpm源,并且选择较新的源命令
[plain] view plain copy
- wget dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm
- yum localinstall mysql-community-release-el6-5.noarch.rpm
- yum repolist all | grep mysql
- yum-config-manager --disable mysql55-community
- yum-config-manager --disable mysql56-community
- yum-config-manager --enable mysql57-community-dmr
- yum repolist enabled | grep mysql
开始安装
Step4:安装mysql 服务器命令
[plain] view plain copy
- yum install mysql-community-server
CENTOS7上安装MYSQL5.7还有一个巨坑
之前的Linux体系中数据库大局部是mysql,不外自从被sun收买以后,便出用散成正在centos那些开源Linux体系中了,那末若是念用的话便须要本身装置了,起首centos7 已没有支撑mysql。
以前的Linux系统中数据库大部分是mysql,不过自从被sun收购之后,就没用集成在centos这些开源Linux系统中了,那么如果想用的话就需要自己安装了,首先centos7 已经不支持mysql,因为收费了你懂得,所以内部集成了mariadb,而安装mysql的话会和mariadb的文件冲突,所以在运行以下命令前:
[plain] view plain copy
- yum install mysql-community-server
需要先卸载掉mariadb,以下为卸载mariadb步骤
[plain] view plain copy
- rpm -qa | grep mariadb
当检查出了系统自带的mariadb后如版本为:mariadb-libs-5.5.37-1.el7_0.x86_64 那么使用以下命令:
[plain] view plain copy
- rpm -e --nodeps mariadb-libs-5.5.37-1.el7_0.x86_64
强制卸了它,再安装mysql5.7即可。
Step5: 启动mysql命令
[plain] view plain copy
- service mysqld start
Step6: 查看mysql是否自启动,并且设置开启自启动命令
[plain] view plain copy
- chkconfig --list | grep mysqld
- chkconfig mysqld on
mysql5.7安装完后如何开启远程root包括远程用户权限
mysql5.7对于安全模块进行了升级,因此如果你想像以前那样在安装完mysql后直接以mysql -u root登录进去再通过一系列的sql命令来更改权限但是这在mysql5.7上是行不通的,按照以前的做法,你会在面临mysql5.7碰到这样的一个报错“access denied for user root@localhost” ,因此请按照以下使用说明操作。
Step1: 停止mysqld服务并使用mysqld safe启动
[plain] view plain copy
- service mysqld stop
- mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
RHEL7.0系列的发行版(例如CentOs 7),特征是使用了systemd来代替原有的init,作为第一支启动的程序。此时网络上面所说的mysqld_secure已经不可使用。但是查看官方文档后,得知在这种情况下mysqld可以支持部分mysqld_safe的参数,命令如下:
[plain] view plain copy
- mysqld --user=mysql --skip-grant-tables --skip-networking &
Step2:登录mysql
此时,你在mysql服务器上使用
[plain] view plain copy
- mysql -uroot -p
就可以登录mysql了
Step3: 更改mysql安全密码
先説一下原因,mysql5.7出现这样的问题,是因为MYSQL5.6之后,加强了对安全性的管控,认为root用户进行mysql操作是一种危险的行为,于是限制了root用户登录mysql()。但是我们可以通过修改Mysql中user表的方法解决该问题
(网络上还有一种做法是查看/var/log/mysql.log,该文件内有安装后Mysql生成的随机密码,然后用文件里的密码正常登录即可,有兴趣者自己可以试下,此处使用正规操作步骤)
[sql] view plain copy
- mysql> SET PASSWORD = PASSWORD('ur password here');
如果出现以下信息:
[plain] view plain copy
- ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
请先运行
[plain] view plain copy
- update mysql.user set authentication_string=password('newpassword') where user='root'
Step4:更改mysql root的密码(和Step3中保持一致)
[sql] view plain copy
- update mysql.user set authentication_string=password('newpassword') where user='root'
之前的mysql版本为:
[sql] view plain copy
- UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
- flush privileges;
而mysql5.7已经把PASSWORD字段改名成了"authentication_string"这个名字了,此处需要注意了。
Step5:建立可供远程连接的root用户
[sql] view plain copy
- GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'ur password here' WITH GRANT OPTION;
Step6:在远程装个mysql workbench然后用远程root登录,爱干吗干吗吧
MYSQL核心配置文件示例
虚拟CPU 6C
内存:6GB
优化过的配置如下:
[plain] view plain copy
- # For advice on how to change settings please see
- # http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html
- [mysqld]
- #
- # Remove leading # and set to the amount of RAM for the most important data
- # cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
- # innodb_buffer_pool_size = 128M
- #
- # Remove leading # to turn on a very important data integrity option: logging
- # changes to the binary log between backups.
- # log_bin
- #
- # Remove leading # to set options mainly useful for reporting servers.
- # The server defaults are faster for transactions and fast SELECTs.
- # Adjust sizes as needed, experiment to find the optimal values.
- join_buffer_size = 128M
- sort_buffer_size = 6M
- read_rnd_buffer_size = 4M
- #deprecate this option after mysql5.5 default-character-set = utf8
- character-set-server=utf8
- open_files_limit = 10240
- back_log = 384
- max_connections = 500
- #deprecate this option after mysql5.5 table_cache = 512K
- max_allowed_packet =16M
- query_cache_size = 384M
- table_open_cache = 512
- key_buffer_size = 384M
- datadir=/var/lib/mysql
- socket=/var/lib/mysql/mysql.sock
- # Disabling symbolic-links is recommended to prevent assorted security risks
- symbolic-links=0
- log-error=/var/log/mysqld.log
- pid-file=/var/run/mysqld/mysqld.pid
- slow_query_log_file = /var/log/mysqld-slow-query.log
- log-short-format
- long-query-time = 3
- #log-long-format
- #log-slow-admin-statements
- log-queries-not-using-indexes
转载于:https://my.oschina.net/u/1396185/blog/889659
mysql5.7在centos上安装相关推荐
- 如何在Ubuntu/CentOS上安装Linux内核4.0
如何在Ubuntu/CentOS上安装Linux内核4.0 大家好,今天我们学习一下如何从Elrepo或者源代码来安装最新的Linux内核4.0.代号为'Hurr durr I'm a sheep'的 ...
- 在CentOS上安装Java环境—openjdk1.7 解决https配置问题
在CentOS上安装Java环境:[1]使用yum安装java 现阶段做企业级项目开发一般都采用Java语言.开发的项目需要放在服务器上运行测试,若以CentOS系统为服务器系统,首先要解决就是Cen ...
- Centos上安装EPEL
RHEL以及他的衍生发行版如CentOS.Scientific Linux为了稳定,官方的rpm repository提供的rpm包往往是很滞后的,当然了,这样做这是无可厚非的,毕竟这是服务器版本,安 ...
- 安装 oracle-xe,CentOS上安装Oracle XE指南
引言: 在CentOS上安装Oracle XE主要用来解决学习和测试的用处,虽然简单,但也是涉及到了诸多的步骤和细节问题. 1. 下载Oracle XE 访问http://www.oracle.co ...
- centos上安装supervisor来管理dotnetcore等应用程序
supervisor 介绍: 这是一款用python编写的进程管理工具,可以守护他管理的所有进程,防止异常退出,以及提供一个可视化的web界面来手动管理,打开关闭重启各种应用,界面如下: 关于在cen ...
- 在Linux系统centos上安装RAR
由于最近弄了个计划,不得不使用RAR,所以要在centos上安装RAR,记录如下: wget http://www.rarsoft.com/rar/rarlinux-3.9.3.tar.gz tar ...
- 在CentOS上安装ZooKeeper集群
一共准备3个CentOS虚拟机 172.16.9.194 172.16.9.195 172.16.9.196 上传zookeeper-3.3.6.tar.gz到服务器并解压,3台服务器的目录结构如下 ...
- 在Ubuntu|CentOS上安装Shutter截图工具及快捷键设置
简介 Shutter前身叫GScrot,它是一款相当棒的截图软件. 通过Shutter,你可以截取包括选定区域.全屏幕.窗口.窗口内的控件甚至网页的图像.通过内置的强大插件机制,你可以在截图后,对图像 ...
- 在CentOS上安装NodeJS_v14.x
在CentOS上安装NodeJS_v14.x 运行NodeJS_v14.x安装程序脚本 下载并执行脚本. sudo yum -y install curl curl -sL https://rpm.n ...
最新文章
- 2021年大数据Hadoop(八):HDFS的Shell命令行使用
- 浅谈android中的目录结构
- 【鉴轻尘】你说你炒的了币,开发得了项目,然而这些你都知道吗?
- P1134 阶乘问题
- linux 监控命令free,简单了解Linux性能监控命令free
- memcache调整value大小限制
- 门道多:一次MaxCompute PS任务的问题排查之旅
- cannot read prpperty ‘start‘ of undefined(问题记录)
- VALSE 2020 公开征集 Workshop 候选讲者
- android开源2016_开源的黄金时代,2016年的预测以及更多新闻
- Word2vec之CBOW模型和Skip-gram模型形象解释
- 运行 lighttrack 遇到错误和解决方法
- python智能推荐_Python与集体智能:第2章:推荐项目
- 数据库基础(常用SQL语句)
- 新手零基础一小时学会小程序开发制作教程
- 《理财系列》-《穷爸爸富爸爸》
- mysql比赛_在Windows环境下的MySQL数据库,精彩比赛
- 使用ScriptableObject代替部分配置表的坑点
- 相似度(距离计算)汇总
- Eclipse 里Tomcat 启动很慢
热门文章
- Mathematica 画图操作中的一些小惊喜
- VS调试js学习总结
- JavaScript语句模版
- Maven父子工程配置文件详解
- windows下二进制mysql的卸载以及安装教程
- Mysql中字段类型之时间戳大坑
- Mongo报如下类似错误时的修改方法Cannot natively represent the long 1396367483000 on this platform...
- 讨论IM软件企业知识—会谈session的概念,附连到IM软件层次图
- glut64位操作系统安装
- mysql large pages_Linux HugePages及MySQL 大页配置