前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CentOS7下安装mysql5.6修改字符集为utf8并开放端口允许远程访问

CentOS7下安装mysql5.6修改字符集为utf8并开放端口允许远程访问

作者头像
Ryan-Miao
发布2018-03-13 13:46:02
2.1K0
发布2018-03-13 13:46:02
举报
文章被收录于专栏:Ryan Miao

前言

mysql最初的免费战略已经深入人心,感觉自己一直都在用mysql。今天在centos7下装mysql。发现原来centos下默认没有mysql,因为开始收费了,取而代之的是另一个mysql的分支mariadb,这个是mysql创始人重新主导的分支。But, whatever, I want mysql. 所以,老老实实的卸载mariadb,安装mysql。

卸载mariadb

代码语言:javascript
复制
#列出所有被安装的rpm package 
rpm -qa | grep mariadb

#卸载
rpm -e mariadb-libs-5.5.37-1.el7_0.x86_64
错误:依赖检测失败:
libmysqlclient.so.18()(64bit) 被 (已安裝) postfix-2:2.10.1-6.el7.x86_64 需要
libmysqlclient.so.18(libmysqlclient_18)(64bit) 被 (已安裝) postfix-2:2.10.1-6.el7.x86_64 需要

#强制卸载,因为没有--nodeps
rpm -e --nodeps mariadb-libs-5.5.37-1.el7_0.x86_64

安装mariadb

centos下yum暂时没有mysql-server直接安装包; MariaDB是MySQL社区开发的分支,也是一个增强型的替代品.

代码语言:javascript
复制
yum -y install mariadb-server mariadb mariadb-devel
systemctl start mariadb
systemctl enable mariadb
mysql_secure_installation
firewall-cmd --permanent --add-service mysql
systemctl restart firewalld.service
iptables -L -n|grep 3306

安装mysql

centos7中默认没有mysql的yum源,需要重新下载:

1.下载mysql的repo源
代码语言:javascript
复制
$ wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
2.安装mysql-community-release-el7-5.noarch.rpm包
代码语言:javascript
复制
$ sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm
3.安装mysql
代码语言:javascript
复制
$ sudo yum install mysql-server
4.重置密码

需要先登录:

代码语言:javascript
复制
$ mysql -u root

我使用的root,但也报错了:

ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock‘ (2),原因是/var/lib/mysql的访问权限问题。下面的命令把/var/lib/mysql的拥有者改为当前用户:

$ sudo chown -R openscanner:openscanner /var/lib/mysql

重启mysql service:

代码语言:javascript
复制
$ service mysqld restart

接下来设置密码:

代码语言:javascript
复制
$ mysql -u root

mysql > use mysql;

mysql > update user set password=password(‘123456‘) where user=‘root‘;

mysql > exit;

开放3306端口

由于centos7使用firewalld而不是iptables,所以:

代码语言:javascript
复制
#开放3306
firewall-cmd --permanent --add-port=3306/tcp 

systemctl restart firewalld.service

#查看端口是否开放
firewall-cmd --query-port=3306/tcp

#list
firewall-cmd --list-all
允许mysql远程访问

mysql默认是不允许远程访问的. mysql -u root -p xxxx

代码语言:javascript
复制
mysql>use mysql
mysql>grant all privileges on *.* to 'root'@'%' identified by 'xxxxx(密码)';
mysql>flush privileges;

参考

CentOS 7 用yum安装 MySQL Centos 7 开启端口 centos7通过yum安装mysql,并授权远程连接

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
    • 卸载mariadb
      • 安装mariadb
        • 安装mysql
          • 1.下载mysql的repo源
          • 2.安装mysql-community-release-el7-5.noarch.rpm包
          • 3.安装mysql
          • 4.重置密码
        • 开放3306端口
          • 允许mysql远程访问
      • 参考
      相关产品与服务
      云数据库 SQL Server
      腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档