關于源更新的問題
直接使用中科大的源,位址
<a target="_blank" href="https://lug.ustc.edu.cn/wiki/mirrors/help/centos">https://lug.ustc.edu.cn/wiki/mirrors/help/centos</a>
根據版本在 /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