关于源更新的问题
直接使用中科大的源,地址
https://lug.ustc.edu.cn/wiki/mirrors/help/centos
根据版本在 /etc/yum.repos.d/ 目录新建 CentOS-Base.repo 文件,将该地址上对应版本文件粘上即可
关于 yum 更新时出现:
Loaded plugins: fastestmirror, refresh-packagekit, security
Existing lock /var/run/yum.pid: another copy is running as pid 14012.
Another app is currently holding the yum lock; waiting for it to exit...
直接干掉改进程
rm -rf /var/run/yum.pid
清除yum缓存及更新yum包
yum clean all
yum makecache
当出现 Metadata Cache Created 字眼儿时,可选择更新之前已经安装锅过 yum 包
yum update
关于安装 mysql 5.6.14
高版本的mysql兼容低版本
源码安装 mysql 5.6.14 ,先检查是否安装过 yum 包
rpm -qa | grep mysql
有,卸掉
rpm -e mysql//一般删除模式,经过测试,只卸载掉mysql服务,源码安装不影响,具体待查
rpm -e --nodeps mysql //强力删除模式,使用时,提升有依赖其的其它文件,该命令可以对其进行强力删除,如果有其依赖的包,会提示
编译时,需要的包文件
make gcc-c++ bison-devel ncurses-devel cmake(这个可以源码安装,也可yum包安装)
需要用到 cmake 工具
编译 cmake 工具不仅需要 gcc ,还需要 gcc-c++ 编译器
安装 cmake 工具:
./configure
出现 CMake has bootstrapped. Now run gmake. 时
make && make install
接着进入 mysql 5.6.14 目录
cmake编译选项支持大部分之前的Mysql(5.6),新老编译选项区别在于:之前用小写,5.6后配置选项换成了大写,之前采用双横线,5.6后使用单横线,之前使用破折号,现在使用下划线,使编译更人性化
cmake编译如下
cmake -DCMAKE_STALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLATION=utf8_general_ci -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/home/mysql/data -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3306 -DSYSCONFDIR=/etc -DEXTRA_CHARSETS=all
相关配置说明:
-DCMAKE_STALL_PREFIX 指定mysql 安装位置;可以之前创建该文件夹,也可以不创建
-DDEFAULT_CHARSET 指定mysql数据库使用的默认字符集;若导入其它字符格式的源码,会出现乱码
-DDEFAULT_COLATION 默认字符校对
-DMYSQL_UNIX_ADDR UNIX socket 文件
-DWITH_MYISAM_STORAGE_ENGINE 启用 Myisam 引擎支持
-DWITH_INNOBASE_STORAGE_ENGINE 启用 InnoBASE 引擎支持
-DWITH_ARCHIVE_STORAGE_ENGINE 启用 ARCHIVE 引擎支持
-DWITH_BLACKHOLE_STORAGE_ENGINE 启用 BLACKHOLE 引擎支持
-DWITH_MEMORY_STORAGE_ENGINE 暂时不清楚?
-DENABLED_LOCAL_INFILE=1 启用加载本地数据
-DWITH_READLINE=1 使能readline库
-DMYSQL_DATADIR=/home/mysql/data 指定数据库存储的目录
-DMYSQL_TCP_PORT=3306 指定数据库默认的TCP/IP端口号 3306
-DSYSCONFDIR=/etc 指定配置文件(my.cnf)的安装目录
-DEXTRA_CHARSETS=all 扩展字符支持
出现:-- Build files have been written to: /root/soft/mysql-5.6.14
然后就是 make && make install 这个过程有些漫长
编译完后,创建mysql用户名和用户组
groupadd mysql;useradd mysql -g mysql
mkdir -p /home/mysql/data
查看创建好的用户名和用户组
cat /etc/passwd | grepm mysql
[/usr/local/mysql/scripts#]cat /etc/passwd | grep mysql
mysql:x:501:501::/home/mysql:/bin/bash
变更用户属性
chown -R mysql:mysql /home/mysql/data
chown -R mysql:mysql /usr/local/mysql
chown -R mysql:mysql /var/log/mysql
初始化配置
cd /usr/local/mysql/scripts
[/usr/local/mysql/scripts#]./mysql_install_db --basedir=/usr/local/mysql/ --datadir=/home/mysql/data/ --user=mysql
拷贝 mysql 服务制启动目录
cp */mysql/support_files/mysql.server /etc/init.d/mysql
[/usr/local/mysql/support-files#]chkconfig mysql on[/usr/local/mysql/support-files#]chkconfig --list | grep mysql
mysql 0:off 1:off 2:on 3:on 4:on 5:on 6:off
启动mysql 服务
srevice mysql start
Starting MySQL............................... [ OK ]
开启成功后,安装好的mysql 默认没有密码
# mysql
修改密码:
mysql>set password=password('**********');
mysql>quit
退出重进
mysql -u root -p
查看 /etc/my.cnf 文件是否存在,若有,备份之
mv /etc/my.cnf /etc/my.cnf.bak