萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> CentOS7下安裝mysql5.6修改字符集為utf8並開放端口允許遠程訪問

CentOS7下安裝mysql5.6修改字符集為utf8並開放端口允許遠程訪問

下面我們來看一篇在CentOS7下安裝mysql5.6修改字符集為utf8並開放端口允許遠程訪問的例子,希望文章對各位有幫助。

前言
mysql最初的免費戰略已經深入人心,感覺自己一直都在用mysql。今天在centos7下裝mysql。發現原來centos下默認沒有mysql,因為開始收費了,取而代之的是另一個mysql的分支mariadb,這個是mysql創始人重新主導的分支。But, whatever, I want mysql. 所以,老老實實的卸載mariadb,安裝mysql。

卸載mariadb
#列出所有被安裝的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社區開發的分支,也是一個增強型的替代品.

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源
$ wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
2.安裝mysql-community-release-el7-5.noarch.rpm包
$ sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm
3.安裝mysql
$ sudo yum install mysql-server
4.重置密碼
需要先登錄:

$ 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:

$ service mysqld restart
接下來設置密碼:

$ mysql -u root

mysql > use mysql;

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

mysql > exit;
開放3306端口
由於centos7使用firewalld而不是iptables,所以:

#開放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

mysql>use mysql
mysql>grant all privileges on *.* to 'root'@'%' identified by 'xxxxx(密碼)';
mysql>f

copyright © 萬盛學電腦網 all rights reserved