Ubuntu下Mysql与phpmyadmin配置详解
一、mysql相关常见命令1. 启动mysql :sudo /etc/init.d/mysql start
2. 停止mysql:sudo /etc/init.d/mysql stop
3. 重启mysql:sudo /etc/init.d/mysql restart
4. 本地用户登录mysql的方法:$ mysql -uroot -p
5. 设置mysql自启动:把启动命令加入/etc/rc.local文件中
6.显示数据库默认编码:show variables like 'character%';
7. 显示所有的数据库:show databases;
二. 更改Ubuntu下MySQL数据库存储位置
在Ubuntu下安装的MySQL默认配置下的数据库文件存储位置是在/var/lib/mysql,现要把数据库存储位置转移到/mnt/wind/mysql这个位置为例,操作过程如下:
1)停止数据库进程:$sudo /etc/init.d/mysql stop
2)建新数据库目录:mkdir /mnt/wind/mysql
3)将原有数据库转移到新位置:$sudo cp –dpr /var/lib/mysql/* /mnt/wind/mysql
4)给新目录重命属性:sudo chown mysql:mysql /mnt/wind/mysql
5)编辑MySQL配置文件:$sudo gedit /etc/mysql/my.cnf
在gedit中找到datadir这一行,将后面等于号之后的内容更改为/mnt/wind/mysql然后保存退出。
6)编辑应用程序访问控制(AppArmor)配置文件:
$sudo nano /etc/apparmor.d/usr.sbin.mysqld
找到并编辑如下两行,改为你的新路径,保存退出。
/var/lib/mysql/ r,
/var/lib/mysql/** rwk,
也可以采用如下的命令行的方法新建一个空白配置文件,也能达到启用新mysql路径目的:
$sudo touch /etc/apparmor.d/disable/usr.sbin.mysqld
注:这一步非常关键,不然移动 /var/lib/mysql 目录后无法启动 MySQL 。
7)重启apparmor:$sudo /etc/init.d/apparmor restart
执行后返回如下信息:Reloading AppArmor profiles : done.
8)重启MySQL服务:$sudo /etc/init.d/mysql start
三. 设置字符集(以utf8为例,其它还有gbk、gb2312等):
1) 查看当前的编码:show variables like 'character%';
2) 修改my.cnf,在下添加default-character-set=utf8
3) 在下添加
default-character-set=utf8
init_connect='SET NAMES utf8;'
如没有则找到 添加
default-character-set=utf8 默认字符集为utf8
init_connect='SET NAMES utf8' (设定连接mysql数据库时使用utf8编码,以让mysql数据库为utf8运行)
4) 重启mysql。
注:只有修改/etc下的my.cnf才能使client的设置起效,安装目录下的设置只能使server的设置有效。
二进制安装的修改/etc/mysql/my.cnf即可
四.安装phpmyadmin
终端中运行命令:sudo apt-get install phpmyadmin
五、配置phpmyadmin
phpmyadmin 默认并不是安装在/var/www下面的,而是在/usr/share/phpmyadmin,你可以 把phpmyadmin复制过去,或者,网上有人说可以创建一个链接,然后把链接复制过去(没有试 过)。我个人认为不一定要复制过去的。如果不复制过去,不用改下一面配置
然后在终端里运行:
sudo gedit /etc/phpmyadmin/apache.conf
把下面两两名的路径改为 /var/www/phpmyadmin
Alias /phpmyadmin /usr/share/phpmyadmin
<Directory /usr/share/phpmyadmin>
六、常见问题
运行$sudo /etc/init.d/apparmor reload却返回如下信息:
Skipping profile /etc/apparmor.d/usr.sbin.mysqld~
: Warning.
这是你用gedit编辑usr.sbin.mysqld这个配置造成的,这个图形界面文本编辑器会在相同位置生成一个usr.sbin.mysqld~的文件,从而影响了AppArmor读取配置文件,出现这个问题请删除这个usr.sbin.mysqld~文件:
$sudo rm /etc/apparmor.d/usr.sbin.mysqld~
[ 本帖最后由 灰儿 于 2009-3-5 13:04 编辑 ]
页:
[1]