背景:
今天才申請(qǐng)了騰訊云+校園計(jì)劃的1元服務(wù)器,安裝了Centos7.0,在安裝MySQL的時(shí)候,使用yum list | grep mysql 來查找yum源中是否有mysql,結(jié)果如下:
[root@VM_47_56_centos ~]# yum list | grep mysql akonadi-mysql.x86_64 1.9.2-4.el7 base apr-util-mysql.x86_64 1.5.2-6.el7 base mysql-proxy.x86_64 0.8.5-2.el7 epel mysql-proxy-devel.x86_64 0.8.5-2.el7 epel mysql-router.x86_64 2.0.2-1.el7 mysql-tools-community mysql-router-debuginfo.x86_64 2.0.2-1.el7 mysql-tools-community mysql-utilities.noarch 1.5.6-1.el7 mysql-tools-community mysql-utilities-extra.noarch 1.5.6-1.el7 mysql-tools mysqlreport.noarch 3.5-11.el7 epel mysqltuner.noarch 1.2.0-7.el7 epel 省略部分內(nèi)容。。。。 [root@VM_47_56_centos ~]#
總之是看不到mysql-server的影子,(PS:據(jù)說Centos7.0的源中暫時(shí)還沒有mysql,但是相同版本的Centos在阿里云是可以直接使用yum install mysql-server 來直接安裝mysql的)
于是找了一些mysql的安裝源,安裝過程如下:
安裝過程:
為了解決這個(gè)問題,我們要先下載mysql的repo源。
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
安裝這個(gè)包后,會(huì)獲得兩個(gè)mysql的yum repo源:
/etc/yum.repos.d/mysql-community.repo和/etc/yum.repos.d/mysql-community-source.repo。
3、安裝mysql
$ sudo yum install mysql-server
這個(gè)過程中就會(huì)看到有mysql的軟件包存在:
[root@VM_47_56_centos ~]# sudo yum install mysql-server 已加載插件:fastestmirror, langpacks | 2.5 kB 00:00:00 mysql-tools-community | 2.5 kB 00:00:00 mysql56-community | 2.5 kB 00:00:00 (1/3): mysql-connectors-community/x86_64/primary_db | 8.6 kB 00:00:00 (2/3): mysql-tools-community/x86_64/primary_db | 22 kB 00:00:00 (3/3): mysql56-community/x86_64/primary_db | 109 kB 00:00:01 Loading mirror speeds from cached hostfile * base: mirrors.sina.cn * extras: mirrors.sina.cn * updates: mirrors.sina.cn 正在解決依賴關(guān)系 --> 正在檢查事務(wù) 省略內(nèi)容。。。 依賴關(guān)系解決 ================================================================================================================= Package 架構(gòu) 版本 源 大小 ================================================================================================================= 正在安裝: mysql-community-libs x86_64 5.6.27-2.el7 mysql56-community 2.0 M 替換 mariadb-libs.x86_64 1:5.5.44-1.el7_1 mysql-community-server x86_64 5.6.27-2.el7 mysql56-community 58 M 為依賴而安裝: mysql-community-client x86_64 5.6.27-2.el7 mysql56-community 19 M mysql-community-common x86_64 5.6.27-2.el7 mysql56-community 256 k numactl-libs x86_64 2.0.9-5.el7_1 事務(wù)概要 ================================================================================================================= 安裝 2 軟件包 (+9 依賴軟件包) 總下載量:80 M Is this ok [y/d/N]: y
下邊的安裝和其他安裝一樣,
根據(jù)步驟安裝就可以了,不過安裝完成后,沒有密碼,需要重置密碼。
4、重置密碼
重置密碼前,首先要登錄
$ mysql -u root
登錄時(shí)有可能報(bào)這樣的錯(cuò):ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock‘ (2),原因是/var/lib/mysql的訪問權(quán)限問題。下面的命令把/var/lib/mysql的擁有者改為當(dāng)前用戶:
$ sudo chown -R mysql:mysql /var/lib/mysql #這里的mysql是用戶名(需要設(shè)置用戶組合用戶)
然后,重啟服務(wù):
$ service mysqld restart
接下來登錄重置密碼:
$ mysql -u root mysql > use mysql; mysql > update user set password=password('xu827928') where user='root'; mysql > exit;
5、開放3306端口(可以不用設(shè)置)
$ sudo vim /etc/sysconfig/iptables
添加以下內(nèi)容:
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
保存后重啟防火墻:
$ sudo service iptables restart
這樣從其它客戶機(jī)也可以連接上mysql服務(wù)了。
6、修改權(quán)限可以使其他機(jī)器登錄:
mysql>mysql -h localhost -u root //這樣應(yīng)該可以進(jìn)入MySQL服務(wù)器 mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION //賦予任何主機(jī)訪問數(shù)據(jù)的權(quán)限 mysql>FLUSH PRIVILEGES //修改生效 mysql>EXIT //退出MySQL服務(wù)器
使用時(shí)遇到的問題
(1)Java.sql.SQLException: Access denied for user ‘root'@'localhost' (using password:YES)
java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:946) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2870) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:812) at com.mysql.jdbc.MysqlIO.secureAuth411(MysqlIO.java:3269) at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1182)
問題的場(chǎng)景是:在命令行模式下用戶名和密碼都是正確的但是就是出現(xiàn)登陸不了授權(quán)失敗的問題。
解決方法:
進(jìn)入MySQL命令臺(tái):
mysql> select user,password,host from mysql.user;
可以看出該表顯示的倒數(shù)第二行為:
+--------+-------------------------------------------+--------------------+ | user | password | host | +--------+-------------------------------------------+--------------------+ | root | | % |
可以看出在root用戶下的任何主機(jī)是沒有password的,因此可以采取兩種方式,在遠(yuǎn)端使用的時(shí)候沒有密碼,顯然是不安全的,然后就是為其在遠(yuǎn)端訪問的時(shí)候設(shè)置密碼。步驟如下:
mysql> grant all privileges on *.* to root@"%" identified by "your password"; Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec)
這相當(dāng)于是給IP-xxx.xxx.xxx.xxx賦予了所有的權(quán)限,包括遠(yuǎn)程訪問權(quán)限。
這樣就可以為其設(shè)置密碼,然后就可以使用密碼進(jìn)行登錄。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
標(biāo)簽:貴州 天津 重慶 湖州 內(nèi)蒙古 常德 臨沂 成都
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《詳解騰訊云CentOS7.0使用yum安裝mysql及使用遇到的問題》,本文關(guān)鍵詞 詳解,騰訊,云,CentOS7.0,使用,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。