首頁  >  文章  >  資料庫  >  如何在Linux系統下安裝 Mysql

如何在Linux系統下安裝 Mysql

迷茫
迷茫原創
2017-03-26 11:54:071161瀏覽

背景

  前不久開始學習部署ambari,在安裝mysql的時候遇到了點問題,現在從網上找了點部署流程記錄下來便於以後安裝mysql。

Centos 7.2 安裝Mysql 5.7.13

首先要安裝yum,如下:

##tar xvf yum-x.x.x.tar .gz

cd yum-x.x.x

yummain.py install yum

以上為記憶中的大致流程。

1. 下載mysql的repo來源

CentOS 7.2的yum來源中預設沒有mysql,要先下載mysql的repo來源

2. 安裝mysql57-community-release-el7-8.noarch.rpm套件
  • <span class="hljs-attribute"><span class="hljs-attribute">rpm <span class="hljs-attribute">-ivh mysql57<span class="hljs-attribute">-community<span class="hljs-subst">-release<span class="hljs-number">-el7<span class="hljs-built_in">-<span class="hljs-subst">8.noarch<span class="hljs-subst">.rpm  <a href="http://www.php.cn/wiki/125.html" target="_blank">#--nodeps </a>--</span>for</span>ce</span></span></span></span></span></span></span>

#安裝這個套件後,會得到兩個mysql的yum repo來源:/ etc/yum.repos.d/mysql-community.repo和/etc/yum.repos.d/mysql-community-source.repo

3.安裝mysql
    yum install mysql-server

    4. 啟動mysql服務

查看MySQL服務是否已啟動

service mysqld status

如果未啟動,可以使用下面指令啟動服務

<code class="hljs sql has-numbering">service mysqld start<br/>or<br/>systemctl <span class="hljs-operator"><span class="hljs-keyword">start mysqld</span></span></code>

5. 重設root密碼


MySQL5.7會在安裝後為root使用者產生一個隨機密碼,而不是像以往版本的空密碼。

可以安全模式修改root登入密碼或用隨機密碼登入修改密碼。下面用隨機密碼方式

    MySQL為root使用者產生的隨機密碼透過mysqld.log檔案可以查找到:
  • <span class="hljs-keyword"><span class="hljs-string">##grep <span class="hljs-keyword"> 'temporary password' /var/<span class="hljs-keyword">log/mysqld.</span>log</span></span></span>

修改root使用者密碼: (MySQL的密碼策略比較複雜,過於簡單的密碼會被拒絕)
  • <span class="hljs-attribute">mysql <span class="hljs-attribute">-u root <span class="hljs-subst">-p mysql<span class="hljs-subst">> Enter password: (輸入剛才查詢到的隨機密碼) mysql<span class="hljs-built_in">> <span class="hljs-string">SET PASSWORD FOR <span class="hljs-string">'root'@<span class="hljs-subst">'localhost'<span class="hljs-string">= <span class="hljs-subst">"Root-123"; mysql</span>> exit</span></span></span></span></span></span></span></span></span>

  • <span class="hljs-attribute"><span class="hljs-attribute"><span class="hljs-subst"><span class="hljs-number"></span></span></span></span>

用root新密碼登入:

  • mysql -u root

    -pRoot

    -123



    ###如果上面的方式不能修改可以使用下面安全模式修改root:###
    关闭服务
    systemctl stop mysqld.service
    vi /etc/my.cnf 
    mysqld下面添加skip-grant-tables 保存退出启动服务
    systemctl start mysqld.service
    mysql -u root 不用密码直接回车
    use mysql
    update user set authentication_string=password(&#39;Root-123&#39;) where User=&#39;root&#39; and Host=&#39;localhost&#39;;
    flush privileges;
    exit;
    vi /etc/my.cnf 把 skip-grant-tables 一句删除保存退出重启mysql服务 
    systemctl restart mysqld.service
    再次登录即可
    mysql -u root -pRoot-123如果进行操作出现下面的提示:
    You must reset your password using ALTER USER statement before executing this statement.
    就再设置一遍密码
    set password = password(&#39;Root-123&#39;);
    ######6. 開放3306連接埠# ########允許使用使用者名稱root密碼Root-123456從任何主機連接到mysql伺服器###
    mysql>GRANT ALL PRIVILEGES ON *.* TO &#39;root&#39;@&#39;%&#39; IDENTIFIED BY &#39;Root-123456&#39; WITH GRANT OPTION;
    mysql>FLUSH PRIVILEGES;
    mysql>exit;
    ###############開啟防火牆mysql 3306連接埠的外部訪問#########firewall-cmd --zone=public --add-port=3306/tcp --permanent############firewall-cmd --reload## ##########

<span class="hljs-comment"><span class="hljs-literal"><span class="hljs-comment"><span class="hljs-literal"><span class="hljs-literal"><span class="hljs-comment"><span class="hljs-literal"><span class="hljs-literal"><span class="hljs-comment"><span class="hljs-literal"><span class="hljs-comment"><span class="hljs-literal"><span class="hljs-literal"><span class="hljs-comment"><span class="hljs-comment"><span class="hljs-literal"><span class="hljs-comment"><span class="hljs-literal"><span class="hljs-literal"><span class="hljs-comment"></span></span></span>總結</span></span></span></span></span></span></span></span></span> </span></span></span></span></span></span></span></span>

  上面比較詳細地配置了mysql,可以使用systemctl restart mysqld.service啟動後,在查看mysql的狀態使用指令(ps -ef|grep mysql)顯示目前設定和狀態。剛開始學習這塊,還是有很多不懂的地方,希望各位大神指點。

#################### #################

以上是如何在Linux系統下安裝 Mysql的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn