1.安装
--假设已经有mysql-5.5.10.tar.gz以及cmake-2.8.4.tar.gz两个源码压缩文件 1)先安装cmake(mysql5.5以后是通过cmake来编译的) # tar -zxv -f cmake-2.8.4.tar.gz # cd cmake-2.8.4 # ./configure # make # make install
2)创建mysql安装目录及数据目录
# mkdir -p /usr/local/mysql --mysql安装目录 # mkdir -p /usr/local/mysql/data --mysql数据目录
3)创建mysql用户及用户组
# groupadd mysql # useradd -r -g mysql mysql
4)安装mysql
# tar -zxv -f mysql-5.5.10.tar.gz # cd mysql-5.5.10 # cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 --注: 上述命令中参数: -DCMAKE_INSTALL_PREFIX=/usr/local/mysql --安装目录 -DINSTALL_DATADIR=/usr/local/mysql/data --数据库存放目录 -DDEFAULT_CHARSET=utf8 --使用utf8字符 -DDEFAULT_COLLATION=utf8_general_ci --校验字符 -DEXTRA_CHARSETS=all --安装所有扩展字符集 -DENABLED_LOCAL_INFILE=1 --允许从本地导入数据
# make # make install
--注: 重新编译时,需要清除旧的对象文件和缓存信息。 # make clean # rm -f CMakeCache.txt # rm -rf /etc/my.cnf
2.配置及管理 1)设置目录权限
# cd /usr/local/mysql # chown -R root:mysql . //把当前目录中所有文件的所有者所有者设为root,所属组为mysql # chown -R mysql:mysql data
2)拷贝mysql参数文件
# cp support-files/my-medium.cnf /etc/my.cnf
3)初始化数据库(创建系统数据库)
# cd /usr/local/mysql # scripts/mysql_install_db --user=mysql
4)设置环境变量 # vi /root/.bash_profile PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib #source /root/.bash_profile
5)手动启动和关闭mysql --启动mysql # cd /usr/local/mysql # ./bin/mysqld_safe --user=mysql & --启动mysql,但不能用该命令停止mysql,启动日志写在此文件下:/usr/local/mysql/data/localhost.err --关闭MySQL服务 # mysqladmin -u root -p shutdown --此时,mysql root用户还没有设置密码,所以为空。输入密码时,直接点回车键即可。
6)通过服务启动和关闭mysql(前提是,mysql已添加至系统服务中)
# service mysql.server start # service mysql.server stop # service mysql.server restart --如运行上述命令时出现:mysql.server 未识别的服务信息,则可能是mysql未添加至系统服务所导致,可通过如下方法添加。
# cp support-files/mysql.server /etc/init.d/mysql --将mysql.server拷贝至系统服务目录/etc/init.d中,并将其命名为mysql # chkconfig --add mysql # chkconfig --list --将mysql服务设定为3、5等级自动启动 # chkconfig --level 35 mysql on --将mysql服务设定为2、3、4、5等级自动启动 # chkconfig mysql on --注: 有些系统中,mysql.server在/usr/local/mysql/share/mysql/目录下,而非本文中的/usr/local/mysql/support-files/目录下。
7)修改mysql用户root密码以及开启远程连接授权 # mysql -u root mysql mysql> use mysql; mysql> desc user; mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root"; --开启用户root远程连接权限 or mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '******' WITH GRANT OPTION; --如不能进行远程连接,且报出错误mysql error number 1130 mysql> update user set Password = password('xxxxxx') where User='root'; --更改用户root密码 mysql> select Host,User,Password from user where User='root'; mysql> flush privileges; mysql> exit --注: 如果还不能进行远程连接,可以关闭防火墙试试,命令如下。 # /etc/rc.d/init.d/iptables stop
