剛哥的mysql5.6安裝總結,很全面
0、解除安裝老版本MySQL
查詢並刪除mysql有關的檔案
find / -name mysql
rm -rf 上邊查詢到的路徑,多個路徑用空格隔開
#或者下邊一條命令即可
find / -name mysql|xargs rm -rf
-
在安裝包存放目錄下執行命令解壓檔案:
tar -zxvf mysql-5.6.42-linux-glibc2.12-x86_64.tar.gz
2.刪除安裝包,重新命名解壓後的檔案 移動解壓後的到/usr/local
rm -f mysql-5.6.42-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.6.42-linux-glibc2.12-x86_64/ mysql
mv mysql/ /usr/local/
3、新增mysql使用者組和mysql使用者
先檢查是否有mysql使用者組和mysql使用者groups mysql
若無,則新增;
groupadd mysql
useradd -r -g mysql mysql
若有,則跳過;
4、進入mysql目錄更改許可權cd /usr/localmysql/
chown -R mysql:mysql ./
5、執行安裝指令碼./scripts/mysql_install_db --user=mysql
報錯1. 缺少依賴
解決1. 下載依賴
yum -y install perl perl-devel
報錯2. 缺少依賴
解決2. 下載依賴
yum install libaio* -y
報錯3. 缺少依賴
解決3. 下載依賴
yum -y install numactl
安裝完之後修改當前目錄擁有者為root使用者,修改data目錄擁有者為mysql
chown -R root:root ./
chown -R mysql:mysql data
6、更改mysql密碼上一步安裝指令碼執行輸出的日誌中告訴我們如何更改密碼了
但是如果直接執行這兩條命令就會報錯
因為這時還沒有啟動mysql,這算是一個坑。啟動方法如下
./support-files/mysql.server start
如果MySQL啟動報錯,則可能是已經存在MySQL程序,殺掉即可
ps aux|grep mysql
kill -9 上邊的程序號
#或者下邊一條命令即可殺掉所有MySQL程序
ps aux|grep mysql|awk '{print $2}'|xargs kill -9
殺掉後再啟動即可。
MySQL啟動之後再執行如下命令更改密碼:
./bin/mysqladmin -u root -h localhost.localdomain password 'root'
密碼更改後即可登入MySQL
./bin/mysql -h127.0.0.1 -uroot -proot
登入之後將其他使用者的密碼也可改為root
update mysql.user set password=password('root') where user='root';
flush privileges;
退出後用mysql -u root -proot 登陸會報錯
-bash:mysql:command not found
問題原因:因為mysql命令的路徑在/usr/local/mysql/bin下面,所以你直接使用mysql命令時,系統在/usr/bin下面查此命令,所以找不到了 解決方法: ln -s /usr/local/mysql/bin/mysql /usr/bin 做個連結即可
做好mysql軟鏈後登陸mysql又報個錯
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
問題原因: 找不到mysql.sock
解決方法: 執行find / -name mysql.sock 找到以後做個軟鏈
7、增加遠端登入許可權上一步即可本地登入,但遠端登入會報錯
為解決這一問題,需要本地登陸MySQL後執行如下命令
grant all privileges on *.* to [email protected]'%' identified by 'root';
flush privileges;
設定好遠端登陸許可權許可權以後 navicate還是登陸不上
這裡是因為centos本身的防火牆導致的 這裡需要設定一下
把-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT 放在下面的位置,
不要亂放,這就開放了mysql遠端連線的埠,然後重啟一下iptables的服務就ok了。
vi /etc/sysconfig/iptables
8、將MySQL加入Service系統服務
cp support-files/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on
service mysqld restart
service mysqld status
9、配置my.cnf vim /usr/local/mysql/my.cnf
#新增以下兩條語句並儲存退出
character-set-server=utf8
lower_case_table_names=1
max_allowed_packet=100M
配置好之後,重啟mysqld服務
service mysqld restart