安装前的准备

Step1: 如果你系统已经有mysql,如一般centos自带mysql5.1系列,那么你需要删除它,先检查一下系统是否自带mysql

yum list installed | grep mysql

Step2: 删除系统自带的mysql及其依赖命令

yum -y remove mysql-libs.x86_64

Step3: 给CentOS添加rpm源,并且选择较新的源命令

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 服务器命令

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的文件冲突,所以在运行以下命令前:

yum install mysql-community-server

需要先卸载掉mariadb,以下为卸载mariadb步骤

rpm -qa | grep mariadb

当检查出了系统自带的mariadb后如版本为:mariadb-libs-5.5.37-1.el7_0.x86_64 那么使用以下命令:

rpm -e --nodeps mariadb-libs-5.5.37-1.el7_0.x86_64

强制卸了它,再安装mysql5.7即可。

Step5: 启动mysql命令

service mysqld start

Step6: 查看mysql是否自启动,并且设置开启自启动命令

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启动

service mysqld stop
mysqld_safe --user=mysql --skip-grant-tables --skip-networking &

RHEL7.0系列的发行版(例如CentOs 7),特征是使用了systemd来代替原有的init,作为第一支启动的程序。此时网络上面所说的mysqld_secure已经不可使用。但是查看官方文档后,得知在这种情况下mysqld可以支持部分mysqld_safe的参数,命令如下:

mysqld   --user=mysql --skip-grant-tables --skip-networking &

Step2:登录mysql

此时,你在mysql服务器上使用

mysql -uroot -p

就可以登录mysql了

Step3: 更改mysql安全密码

先説一下原因,mysql5.7出现这样的问题,是因为MYSQL5.6之后,加强了对安全性的管控,认为root用户进行mysql操作是一种危险的行为,于是限制了root用户登录mysql()。但是我们可以通过修改Mysql中user表的方法解决该问题
(网络上还有一种做法是查看/var/log/mysql.log,该文件内有安装后Mysql生成的随机密码,然后用文件里的密码正常登录即可,有兴趣者自己可以试下,此处使用正规操作步骤)

mysql> SET PASSWORD = PASSWORD('ur password here');

如果出现以下信息:

ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement 

请先运行

update mysql.user set authentication_string=password('newpassword') where user='root'

Step4:更改mysql root的密码(和Step3中保持一致)

update mysql.user set authentication_string=password('newpassword') where user='root'

之前的mysql版本为:

UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
flush privileges;

而mysql5.7已经把PASSWORD字段改名成了"authentication_string"这个名字了,此处需要注意了。

Step5:建立可供远程连接的root用户

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'ur password here' WITH GRANT OPTION;

Step6:在远程装个mysql workbench然后用远程root登录,爱干吗干吗吧

MYSQL核心配置文件示例

虚拟CPU 6C
内存:6GB
优化过的配置如下:

# 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

mysql5.7在centos上安装的完整教程以及相关的“坑”的更多相关文章

  1. centOS上安装MySQL5.7

    在centos上安装mysql,前提得有sudo的权限.没有的话先去跟管理员申请一个. STEP 1 - 安装MySQL 首先打开浏览器访问下 https://dev.mysql.com/downlo ...

  2. 在Centos上安装RabbitMQ流程(转)

    在Centos上安装RabbitMQ流程------------------------ 1. 需求 由于项目中要用到消息队列,经过ActiveMQ与RabbitMQ的比较,最终选择了RabbbitM ...

  3. 在centos上安装mysql

    本文依然是用的xftp上传gz文件,然后在xShell上操作的,如果没有安装使用这两个文件的请查阅之前的博客. 1.将下载好的文件用xftp上传到对应的位置. 2.解压文件:tar  -zvxf  m ...

  4. centos上安装python环境

    1.安装python-pip ​ 首先安装epel扩展源: ​ yum -y install epel-release ​ 更新完成之后,安装pip: ​ yum -y install python- ...

  5. NoSql1 在Linux(CentOS)上安装memcached及使用

    前言:       今天是初五,生活基本要从过年的节奏中回归到正常的生活了,所以想想也该想想与工作有关的事情了.我之前在工作中会经常使用memcached和redis,但是自己一直没有时间系统的好好看 ...

  6. 在Ubuntu|CentOS上安装Shutter截图工具及快捷键设置

    简介 Shutter前身叫GScrot,它是一款相当棒的截图软件. 通过Shutter,你可以截取包括选定区域.全屏幕.窗口.窗口内的控件甚至网页的图像.通过内置的强大插件机制,你可以在截图后,对图像 ...

  7. 在CentOS上安装rabbitmq-server

    ***在 CentOS 6.4上安装python*** 注意啊,自己手动安装python2.7.5,不要动系统上面其他的版本 1,先安装GCC,用如下命令yum install gcc gcc-c++ ...

  8. CentOS上安装软件错误提示:configure: error: no acceptable C compiler found in $PATH

    CentOS上安装软件错误提示:configure: error: no acceptable C compiler found in $PATH 因为是centos linux,默认可以采用yum方 ...

  9. 如何在centos上安装epel源

    一.EPEL是什么? EPEL (Extra Packages for Enterprise Linux,企业版Linux的额外软件包) 是Fedora小组维护的一个软件仓库项目,为RHEL/Cent ...

随机推荐

  1. requests-post请求

    post与get方法的区别在于post需要提交一些数据以备处理. 在requests里面非常简单,headers,data都是直接加进去就可以了 # requests.post提交表单# 有些网站使用 ...

  2. ECSHOP3.6版 钻石小鸟模板修改教程

    ecshop3.6版 钻石小鸟 模板修改明细 (1) 钻石小鸟 首页轮播图修改 (2)首页布局设置 (修改前建议先备份下数据库.  后台/数据备份) (3)修改模板头部内容. 如下图. 后台,模板设置 ...

  3. .NET Core2.0+MVC 用Redis/Memory+cookie实现的sso单点登录

    之前发布过使用session+cookie实现的单点登录,博主个人用的很不舒服,为什么呢,博主自己测试的时候,通过修改host的方法,在本机发布了三个站点,但是,经过测试,发现,三个站点使用的sess ...

  4. [LeetCode] Partition Labels 分割标签

    A string S of lowercase letters is given. We want to partition this string into as many parts as pos ...

  5. [LeetCode] Valid Square 验证正方形

    Given the coordinates of four points in 2D space, return whether the four points could construct a s ...

  6. 洛谷3794 签到题IV

    题目描述 给定一个长度为n的序列$a_1,a_2...a_n$,其中每个数都是正整数. 你需要找出有多少对(i,j),$1 \leq i \leq j \leq n$且$gcd(a_i,a_{i+1} ...

  7. 计蒜客NOIP模拟赛(3)D1T3 任性的国王

    X 国的地图可以被看作一个两行 nn 列的网格状图.现在 X 国需要修建铁路,然而该国的国王非常小气,他只想保证位于某两列之间的所有城市互相可以到达就行了,在此基础上,他希望所花费的代价最小. 铁路可 ...

  8. [HNOI2001]求正整数

    题目描述 对于任意输入的正整数n,请编程求出具有n个不同因子的最小正整数m. 例如:n=4,则m=6,因为6有4个不同整数因子1,2,3,6:而且是最小的有4个因子的整数. 输入输出格式 输入格式: ...

  9. 【Noip2017游记】

    好像是考Noip的第5个年头了...高中的第一次Noip... 考了三年PJ,今年是第二次TG,希望不要像去年那么萎(gou) Day -1 考前停课了挺久的来着的,学长出了N套题来模拟,自己练了DP ...

  10. 【NOIP2014TG】solution

    链接:https://www.luogu.org/problem/lists?name=&orderitem=pid&tag=83|31 D1T1(rps) 题意:给你一个周期,以及胜 ...