[Openwrt 项目开发笔记]:MySQL配置(六)

[Openwrt项目开发笔记]系列文章传送门:http://www.cnblogs.com/double-win/p/3888399.htmlhtml

 

正文:mysql

在本人的项目中,运行在路由器上的服务器采用Nginx+MySQL+PHP 架构。一般较为常见的web框架为Lamp(Linux+Apache+Mysql+PHP),为什么咱们选择LNMP呢?我将在后续的几篇文章中给出答案。web

首先咱们来介绍如何在Openwrt上搭建MySQL数据库。sql

参考文章:(http://blog.csdn.net/yufei_email/article/details/21845935数据库

 

1、安装MySQL数据库(在backfire10.3版本中,package已经包含mysql-server.ipk)所以能够直接经过opkg安装。服务器

opkg update
opkg install mysql-server

 

2、设置mysql配置文件(/etc/my.cnf)架构

1. 修改数据库存放的位置(在/etc/my.cnf中找到以下配置)框架

datadir            =/mnt/data/mysql
tmpdir             =/mnt/data/tmp

 更改成:spa

datadir             =/mnt/sda3/data/mysql     #将数据库放置到U盘对应分区上存储
tmpdir              =/mnt/sda3/data/tmp       #将数据库临时文件夹存放到U盘对应分区上

#本人的数据库存放在U盘第三个分区上,也就是/mnt/sda3,你们根据本身的须要修改

2. 修改数据库的绑定地址(找到bind-address属性).net

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/mysql
mkdir /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

 

3、启动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用户登陆mysql
mysql -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就能正常登陆和使用了。

 

4、遇到问题以及解决方法

在本人安装启动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/ 谢谢!

相关文章
相关标签/搜索