CentOS6安装部署MySQL5.5具体步骤详解
准备工作
代码如下 | |
rpm -qa|grep mysql #关闭SELinux |
安装cmake
由于mysql5.5开始,不再使用configure安装,而是使用cmake。
代码如下 | |
wget http://www.cmake.org/files/v2.8/cmake-2.8.12.2.tar.gz #yum -y install cmake |
下载补丁及安装包
代码如下 | |
#下载mysql-openssl.patch #下载mysql-5.5.37.tar.gz patch -p1 < ../mysql-openssl.patch mkdir /data0/mysql/data #cmake安装配置 数据库文件存放地址为 /data0/mysql/data cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data0/mysql/data -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock -DMYSQL_TCP_PORT=3306 -DWITH_DEBUG=0 -DENABLED_LOCAL_INFILE=1 -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_EMBEDDED_SERVER=1 make && make install |
复制配置文件
#在support-files目录中有五个配置信息文件(这里很重要,一定要根据自己的内存复制对应的cnf文件,否则mysql始终起不来):
#my-small.cnf (内存<=64M)
#my-medium.cnf (内存 128M)
#my-large.cnf (内存 512M)
#my-huge.cnf (内存 1G-2G)
#my-innodb-heavy-4G.cnf (内存 4GB)
cd /usr/local/mysql
cp ./support-files/my-innodb-heavy-4G.cnf /etc/my.cnf
修改配置文件
代码如下 | |
vi /etc/my.cnf #在 [mysqld] 段增加或修改 |
创建用户和组
代码如下 | |
groupadd mysql useradd -s /sbin/nologin -M -g mysql mysql |
设置权限
代码如下 | |
chown -R mysql /usr/local/mysql/var (如果数据库文件目录有修改,请操作具体目录,如:chown -R mysql:mysql /data0/mysql/data) chgrp -R mysql /usr/local/mysql/. |
初始化数据库
代码如下 | |
/usr/local/mysql/scripts/mysql_install_db --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/data0/mysql/data --user=mysql |
配置开机自启动
代码如下 | |
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql chmod 755 /etc/init.d/mysql |
设置软连接
[这一步可以跳过。并不影响使用。]
使mysql, mysqldump, mysqladmin等bin命令能在shell中直接运行
代码如下 | |
ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql ln -s /usr/local/mysql/include/mysql /usr/include/mysql ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql ln -s /usr/local/mysql/bin/mysqldump /usr/bin/mysqldump ln -s /usr/local/mysql/bin/myisamchk /usr/bin/myisamchk ln -s /usr/local/mysql/bin/mysqld_safe /usr/bin/mysqld_safe ln -s /usr/local/mysql/bin/mysqladmin /usr/bin/mysqladmin |
启动MySQL
代码如下 | |
/etc/init.d/mysql start /usr/local/mysql/bin/mysqladmin -u root password 123456 /usr/local/mysql/bin/mysql -u root -p123456 #update user set password=password('123456') where user='root'; delete from user where not (user='root') ; delete from user where user='root' and password=''; show databases; drop database test; DROP USER ''@'%'; flush privileges; /etc/init.d/mysql restart # 1)查看是否有进程mysql ps -ef | grep mysql |