日期:2014-05-16 浏览次数:20700 次
一、准备工作
1.1、MySQL版本介绍
MySQL 官方放出的版本比较多,但没有针对 ubuntu 的版本,所以只能选择二进制分发版和源码分发版,前者已经编译并经过优化了,后者没有。
MySQL 二进制分发版的文件名格式为 mysql-VERSION-OS.tar.gz,其中 VERSION 是版本号(例如,5.1.51),OS表示分发版安装的操作系统类型(例如,linux-i686)。
1.2、下载二进制分发版
1. 系统环境:Ubuntu 10.10
2. 下载地址:http://dev.mysql.com/downloa
wget ftp://mirror.csclub.uwaterloo.ca/mysql/Downloads/MySQL-5.1/mysql-5.1.53-linux-i686-glibc23.tar.gz
二、MySQL安装过程
2.1、添加用户和组
创建mysql组和mysql用户,该用户只需要在系统中存在,不需要登录,所以添加了 -r 选项。
groupadd mysql? useradd -r -g mysql mysql
2.2、解压到指定目录
tar -zxf mysql-5.1.53-linux-i686-glibc23.tar.gz -C /usr/local/
mv /usr/local/mysql-5.1.53-linux-i686-glibc23 /usr/local/mysql
cd /usr/local/mysql/
2.3、屏蔽旧配置文件 (如果有)
mv /etc/mysql/my.cnf /etc/mysql/my.cnf.bak
2.4、更改权限
chown -R mysql .
chgrp -R? mysql .
2.5、初始化授权表
安装MySQL之前,必须创建 MySQL 数据目录和初始化授权表,授权表定义了初始 MySQL 用户账户和访问权限。(http://dev.mysql.com/doc/refman/5.1/zh/installing.html#mysql-install-db]了解更多)
scripts/mysql_install_db --user=mysql
2.6、更改数据目录权限
初始化授权表后会产生 date 目录,该目录所有者必须改为 mysql。
chown -R root .
chown -R mysql data
2.7、复制配置文件
如果你不复制,MySQL 服务器将使用默认设置。
mkdir /etc/mysql
cp? support-files/my-medium.cnf /etc/mysql/my.cnf
2.8、建立软链接
将 /usr/local/mysql/bin 路径加入系统变量中,即直接编辑/etc/environment文件,或者新建软链接。
ln -s? /usr/local/mysql/bin/mysqld_safe /usr/local/bin
ln -s /usr/local/mysql/bin/mysqladmin /usr/local/bin
ln -s /usr/local/mysql/bin/mysql /usr/local/bin
2.9、启动MySQL服务
mysqld_safe 是用来启动MySQL服务的,它比 mysqld 多了一些安全特性(关于mysqld_safe
),mysqld_safe 的许多选项与mysqld的相同(关于 mysqld 命令行选项
)
bin/mysqld_safe --user=mysql &
三、安装后测试与启动
3.1、检查MySQL服务
首先确保MySQL服务已启动,方法见上面第二8条,能否成功启动关键在于mysql_install_db初始化授权表是否顺利,然后使用mysqladmin来验证MySQL服务。
bin/mysqladmin version //检查服务器版本
bin/mysqlshow //列出所有数据库
bin/mysqlshow mysql //列出mysql数据库中的所有表
Ubuntu 中还可以使用检查进程的方法,查看MySQL是否启动
ps -A|grep mysql //查看mysql是否已经后台运行
kill -9 进程号 //强制杀死进程
3.2、自动启动和停止MySQL
关于Ubuntu自动启动见《Ubuntu系统update-rc.d命令详解》
,官方文档见自动启动和停止 MySQL
。
cp support-files/mysql.server /etc/init.d/mysql
update-rc.d mysql defaults
3.3、启动、停止、重启
3.3.1、MySQL 启动方法
四、MySQL账户安全设置
官方文档见 Securing the Initial MySQL Accounts
(使初始MySQL账户安全
),简单来说就是修改匿名账户密码或者删除,设置root账户密码。
4.1、检测MySQL账户情况
cd /usr/local/mysql/
bin/mysql -u root -p mysql
SELECT User, Host, Password FROM mysql.user;
4.2、设置root账户密码
方法有三种,分别是:使用SET PASSWORD语句、使用UPDATE语句、使用mysqladmin命令行客户端程序。建议使用SET PASSWORD语句,因为mysqladmin虽然简单,但是是只能为localhost主机设置密码。
4.2.1、使用mysqladmin设置密码
格式:mysqladmin -u 用户名 -p? password 新密码
注:因为开始时root没有密码,所以-p一项就可以省略了。
cd /usr/local/mysql/
bin/mysqladmin -uroot -p password 123456
4.2.2、使用SET PASSWORD设置密码(推荐)
cd /usr/local/mysql/
bin/mysql -uroot -pmysql
SET PASSWORD FOR 'root'@'localhost'= PASSWORD('123456');
SET PASSWORD FOR 'root'@'127.0.0.1'= PASSWORD('123456');
SET PASSWORD FOR 'root'@'ubuntu'= PASSWORD('123456'); //ubuntu换为你的主机名
4.3、删除匿名帐户
cd /usr/local/mysql/
bin/mysql -u root -p
DROP USER ''@'localhost';
DROP USER ''@'ubuntu'; //ubuntu换为你的主机名
五、MySQL 相关设置
5.1、MySQL字符集
MySQL二进制分发版用"--with-extra-charsets=