源码包下载:
1.https://downloads.mysql.com/archives/community/(现在这里找到要下载的版本)
2.http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.5.53.tar.gz(然后在360浏览器里下载)
3.https://cdn.mysql.com//archives/mysql-5.5/mysql-5.5.53.tar.gz(最后在下载器里复制下载资源链接地址)
系统:CentOS6.4_64
MySQL版本:MySQL5.5.53
卸载旧版本
rpm -qa | grep mysql
yum remove mysql...
依赖包
yum install gcc gcc-c++ cmake ncurses.x86_64 ncurses-devel.x86_64 bison-devel
新建运行MySQL的用户和组
groupadd mysql
useradd -g mysql mysql -s /sbin/nologin
新建mysql安装目录
mkdir /usr/local/mysql 安装目录
mkdir /mysqldata 数据存放目录
chmod -R 755 /mysqldata
chown -R mysql:mysql /mysaldata
新建mysql.sock和mysql.pid 的存放目录,cmake时将会用到
mkdir /var/lib/mysql
chown -R mysql:mysql /var/lib/mysql
解压源码包并cd到源码目录
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/mysqldata \
-DSYSCONFDIR=/etc \
-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DENABLE_DTRACE=0 \
-DDEFAULT_CHARSET=utf8mb4 \
-DDEFAULT_COLLATION=utf8mb4_general_ci \
-DWITH_EMBEDDED_SERVER=1
以下为成功显示:
make && make install
以下为成功显示:
进入到安装目录
cd /usr/local/mysql 进行以下操作
cp support-files/my-large.cnf /etc/my.cnf
修改 my.cnf 添加以下内容:
[mysqld_safe]
log-error=/var/log/mysqld.log
[这一项很重要,MySQL启动出现问题时,在这个日志里可以查看具体报错信息进行调试]
scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/mysqldata --user=mysql
注意:在CentOS 6.4版操作系统的最小安装完成后,在/etc目录下会存在一个my.cnf,需要将此文件更名为其他的名字,如:/etc/my.cnf.bak,否则,该文件会干扰源码安装的MySQL的正确配置,造成无法启动
scripts/mysql_install_db 初始化数据库
scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/mysqldata --user=mysql
配置mysql的环境变量
vim /etc/profile.d/mysql.sh
export PATH=/usr/local/mysql/bin:$PATH
source /etc/profile.d/mysql.sh 立即生效
启动MySQL
添加服务,拷贝服务脚本到init.d目录,并设置开机启动
cp support-files/mysql.server /etc/init.d/mysqld
chkconfig mysqld on
chkconfig mysqld --level 2345 on
service mysql start
配置root用户
MySQL启动成功后,root默认没有密码,我们需要设置root密码
mysql -uroot
mysql> SET PASSWORD = PASSWORD('ctyun@123');
参考文档:http://blog.csdn.net/xuxingzhuang/article/details/51592363