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 root@'%' 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