您的位置:首页 > 运维架构 > Linux

Linux服务器部署系列之二—MySQL篇 推荐

2009-06-22 12:46 363 查看
MySQL是linux环境中使用最广泛的数据库之一,著名的“LAMP黄金组合”就要用到MySQL。关于MySQL的优点及作用,我就不多讲了,网上很多这样的文章。 今天我们要谈的是MySQL服务器的部署。

一、[/b] [/b]安装[/b]MySQL[/b]
1.[/b]软件需求:[/b][/b]
mysql-5.0.83-linux-i686.tar.gz
下载地址:[/b]http://dev.mysql.com/downloads/mysql/5.0.html
[/b]
2. [/b]查看系统中是否已经安装了[/b]MySQL[/b],如果有卸载所有以[/b]mysql[/b]开头的包。[/b][/b]
# rpm –qa | grep mysql //查看系统中是否已经安装了MySQL
# rpm –e mysql-* //卸载所有以mysql开头的包
# rm –f /etc/my.cnf //查找/etc/my.cnf,如果有删除它

3. [/b]安装[/b]MySQL[/b]
# useradd mysql //添加用于启动MySQL的用户
# groupadd mysql //添加用于启动MySQL的用户组
# tar zxvf mysql-5.0.83-linux-i686.tar.gz
# cp –rf mysql-5.0.83-linux-i686 /usr/local/
# cd /usr/local
# mv mysql-5.0.83-linux-i686 mysql
# cd /usr/local/mysql
# scripts/mysql_install_db //初始化授权表
# cd /usr/local
# chgrp –R mysql mysql
# chown –R mysql mysql/data //修改MySQL目录的所有权
# ln –s /usr/local/mysql/bin/* /usr/local/bin/
# bin/safe_mysqld --user=mysql & //启动Mysql ,&表示后台运行

4. [/b]测试[/b][/b]
# mysqladmin status //服务状态查询



# mysql //登录Mysql



5. [/b]配置系统启动时自动启动[/b]MySQL[/b]



6. [/b]修改[/b]MySQL[/b]的最大连接数[/b][/b]
# vi /etc/my.cnf
//添加以下行



说明:
max_connections设置最大连接数为1000;max_user_connections设置每用户最大连接数为200;wait_timeout表示200秒后将关闭空闲(IDLE)的连接,但是对正在工作的连接不影响。
//保存退出,并重新启动MySQL,然后使用下面的命令查看修改是否成功



二、口令修改[/b][/b]
1. Mysql安装好后,root用户默认是没有密码的,所以我们需要给它添加一个密码。格式如下:
# mysqladmin -u root password 密码
比如,要将root的密码设为123456,
# mysqladmin -u root password 123456
2. 添加密码后再连接服务器,就需要用以下格式的命令了:
# mysql -h 主机名或IP地址 -u 用户名 -p
比如,登录本机数据库:
# mysql -h localhost -root -p
3. 如果用户已经有密码了,需要修改密码,那么需要按以下格式更改密码:
# mysqladmin -u root -p password 密码
比如,将root用户的密码改为abc123
# mysqladmin -u root -p password abc123

三、备份[/b][/b]
1. [/b]在线备份[/b][/b]
在线备份有两种方式,使用mysqldump命令或mysqlhotcopy命令。
1)mysqldump命令
A. 导出指定数据库的表,如果不指定tables,将导出整个数据库的所有表:
# mysqldump [options] database [tables]
B. 可同时导出多个数据库
# mysqldump [options] --database [options] db1 [db2 db3 …..]
C. 导出当前服务器内的所有数据库
# mysqldump [options] -all-database [options]
D. 如果忘记mysqldump的参数,可以使用如下命令查找:
# mysqldump -help
2) mysqlhotcopy命令
Mysqlhotcopy命令是将某个数据库复制为一个新的数据库副本,而不中止原数据库服务,格式如下:
# mysqlhotcopy db_name

2. [/b]离线备份[/b][/b]
离线备份可以使用gzip方式将数据库压缩成.tgz文件,比如,将/usr/local/mysql下的数据库采用gzip方式压缩到/backup/mysql.tgz文件中:
# tar cvfz /backup/mysql.tgz /usr/local/mysql

四、故障恢复[/b][/b]
数据库运行久了,偶尔会产生一些故障,这时候我们可以通过myisamchk命令进行恢复,格式如下:
#myisamchk [options] tables [.MYI] //tables[.MYI]是指数据表所在的文件名
如果只是简单出错,可以使用快速恢复:
#myisamchk -r -q table_name
如果快速恢复不了了,可以使用直接恢复:
#myisamchk -r table_name
如果直接恢复也不行了,可以使用安全恢复:
#myisamchk -safe-recover table_name

五、使用[/b]phpMyAdmin[/b]实现[/b]web[/b]管理[/b][/b]
1. [/b]安装[/b][/b]
1)软件需求
phpMyAdmin-3.2.0-all-languages
下载地址:http://www.phpmyadmin.net
2)安装
默认下载的是.zip文件,无需编译安装,我们使用unzip解压后,存放到/usr/local/apache/htdocs目录下,并做好相关配置就可以使用了。phpMyAdmin需要Apache的支持,关于Apache的配置可以参照上一篇文:Linux服务器部署系列之一—Apache篇(http://guoxuemin.blog.51cto.com/379574/168534)。





2. [/b]配置[/b][/b]
phpMyAdmin的配置文件主要是phpMyAdmin目录下的config.inc.php,默认情况下该文件为config.sample.inc.php,需要将其先修改为config.inc.php。


[/b]


[/b]
可以根据需要,修改以下行:


[/b]
说明:[/b][/b]
$cfg['Servers'][$i]['host'] = 'localhost'; //数据库服务器
$cfg['Servers'][$i]['auth_type'] = 'config'; //登录方式,在自己的机子里调试用config,如果在网上用http或cookie。
$cfg['Servers'][$i]['user'] = 'root'; //数据库用户名
$cfg['Servers'][$i]['password'] = ''; //数据库密码
$cfg['Servers'][$i]['only_db'] = ''; //数据库名称
$cfg['DefaultLang'] = 'zh'; //中文显示默认

3. [/b]测试[/b][/b]
打开浏览器,输入地址:http://192.168.99.9/phpMyAdmin,就可以看到MySQL的Web登录界面了。



输入数据的用户名和密码后,就可以打开Web管理界面了,如下图:



通过Web管理MySQL数据库要直观许多,不过,这个要看个人习惯、爱好。
MySQL的部署完成,结合上一篇文“Linux服务器部署系列之一—Apache篇”(http://guoxuemin.blog.51cto.com/379574/168534),就可以配置出著名的“LAMP黄金组合”。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息