[Openwrt 項目開發筆記]:MySQL配置(六)

來源:互聯網
上載者:User

標籤:style   blog   http   color   使用   os   strong   檔案   

 

在本人的項目中,運行在路由器上的伺服器採用Nginx+MySQL+PHP 架構。通常較為常見的web架構為Lamp(Linux+Apache+Mysql+PHP),為何我們選擇LNMP呢?我將在後續的幾篇文章中給出答案。

首先我們來介紹如何在Openwrt上搭建MySQL資料庫。

參考文章:(http://blog.csdn.net/yufei_email/article/details/21845935)

 

一、安裝MySQL資料庫(在backfire10.3版本中,package已經包含mysql-server.ipk)因此可以直接通過opkg安裝。

opkg updateopkg install mysql-server

 

二、設定mysql設定檔(/etc/my.cnf)

1. 修改資料庫存放的位置(在/etc/my.cnf中找到如下配置)

datadir            =/mnt/data/mysqltmpdir             =/mnt/data/tmp

 更改為:

datadir             =/mnt/sda3/data/mysql     #將資料庫放置到隨身碟對應分區上儲存tmpdir              =/mnt/sda3/data/tmp       #將資料庫臨時檔案夾存放到隨身碟對應分區上#本人的資料庫存放在隨身碟第三個分區上,也就是/mnt/sda3,大家根據自己的需要修改

2. 修改資料庫的綁定地址(找到bind-address屬性)

bind-address        =127.0.0.1

  更改為:

bind-address        =0.0.0.0

  修改的目的:允許遠端存取。

  儲存修改,並退出編輯。

3. 建立資料庫存放檔案夾(若my.cnf中datadir以及tmpdir對應儲存位置不存在的話,進行此操作,否則跳過此步驟)

mkdir /mnt/sda3/data mkdir /mnt/sda3/data/mysqlmkdir /mnt/sda3/data/tmp#更為簡單的命令# mkdir -p /mnt/sda3/data /mnt/sda3/data/mysql /mnt/sda3/data/tmp

4. 建立database(執行如下操作)

/usr/bin/mysql_install_db --force

 

三、啟動MySQL資料庫

1. 啟動mysql守護進程

/etc/init.d/mysqld enable/etc/init.d/mysqld start

2. 啟動mysql server互動進程:

 使用過mysql的親們都清楚,mysql資料庫的操作需要對應使用者有許可權才行的。在剛剛建成的資料庫還沒有對使用者佈建密碼。那該如何設定呢?有如下兩種方法:

 方法一:

 使用mysqladmin命令預先設定對應使用者mysql使用密碼,以root使用者為例:

/usr/bin/mysqladmin -u root password XXXXXX   # XXXXXX 是為root使用者佈建的密碼

  方法二:

 以非授權方式進入mysql,進行使用權限設定:

#以非授權的方式啟動mysqld。mysqld --skip-grant&#root使用者登入mysqlmysql -u root#查看是否存在mysql資料庫show databases;use mysql;update user set Password=password(‘XXXXXX‘) where User=‘root‘ and Host=‘localhost‘;flush privileges;exit

Tips: 在此次修改中,我們僅僅設定了localhost的使用者名稱和密碼,其他許可權均沒有設定。如果需要,要另行設定。

 關閉mysqld服務

killall mysqld

重啟mysqld服務

/etc/init.d/mysqld start

在設定完密碼和許可權之後,以root使用者登入Mysql:

mysql -u root -p

 ok 到此Mysql就能正常登入和使用了。

 

四、遇到問題以及解決方案

在本人安裝啟動Mysql的時候,系統報錯:

can‘t open library ‘libncurses.so.5‘ ...

在網上查看了各種文章,發現大家說的都好高大上,什麼核心版本不對,什麼檔案連結出錯。幾經修改,還是沒有解決問題,後來無意中到尋找,居然發現了libncurses的安裝包。。。

http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/

原來缺少libncurses的庫檔案的解決方案是:

opkg install libncurses

安裝完畢之後,重啟mysql服務即可正常登陸了。

 

下一節,介紹在Openwrt上安裝PHP+MySQL。

轉載請註明出處:http://www.cnblogs.com/double-win/ 謝謝!

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.