本次操作在OpenStack虛擬機器192.168.0.230上進行操作,hostname為:host-172-16-5-7
1.下載安裝套件從MySQL官網上下載最新的mysql安裝包mysql-5.7.17-Linux-glibc2.5-x86_64.tar.gz
下載位址:
http://dev.mysql.com/downloads/file/?id=467556
注意,一定要下載.tar.gz,不要下載那個.tar的包
將安裝包上傳到/opt目錄下:
2.檢查庫檔案是否存在,如果存在則刪除[root@host-172-16-5-7 ~]# rpm -qa | grep mysql mysql-libs-5.1.73-3.el6_5.x86_64 [root@host-172-16-5-7 ~]# rpm -e mysql-libs-5.1.73-3.el6_5.x86_64 --nodeps /sbin/ldconfig: File /usr/lib64/libpq.so.5.8 is empty, not checked. [root@host-172-16-5-7 ~]# rpm -qa | grep mysql
整個安裝過程參考如下文件進行:
http://dev.mysql.com/doc/refman/5.7/en/binary-installation.html
#3.Mysql依賴libaio函式庫yum search libaio # search for info yum install libaio # install library
groupadd mysql useradd -r -g mysql -s /bin/false mysql cd /usr/local tar -zxvf /opt/mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz -C /opt/ ln -s /opt/mysql-5.7.17-linux-glibc2.5-x86_64 mysql cd mysql mkdir mysql-files chmod 750 mysql-files chown -R mysql . chgrp -R mysql . bin/mysqld --initialize --user=mysql
如果這一步報錯如下:
[ERROR] --initialize specified but the data directory has files in it. Aborting.
解決方案:
rm -rf /var/lib/mysql/
重新執行上面的命令,提示產生了一個臨時密碼:
2017-01-03T09:12:33.748807Z 1 [Note] A temporary password is generated for root@localhost: =*-gFoje>1Pr
執行這一步驟應該生成一個data目錄,如果沒有生成,那一定是因為系統中存在已經安裝好了的mysql,先按照步驟2卸載掉,然後重新執行
bin/mysqld --initialize --user=mysql bin/mysql_ssl_rsa_setup chown -R root . chown -R mysql data mysql-files bin/mysqld_safe --user=mysql &
下面這一步可選
cp support-files/mysql.server /etc/init.d/mysqld
修改/usr/local/mysql/support-files/my-default.cnf
#basedir = /usr/local/mysql datadir = /usr/local/mysql/data port = 3306
改完之後複製一份到/etc/目錄下,重新命名為my.cnf
cp my-default.cnf /etc/my.cnf
新增mysql環境變數
vim /etc/profile export MYSQL_HOME=/usr/local/mysql export PATH=$MYSQL_HOME/bin:$PATH source /etc/profile
service mysqld start
啟動成功:
[root@ambari support-files]# service mysqld start Starting MySQL.Logging to '/usr/local/mysql/data/ambari.err'. . [ OK ] [root@ambari support-files]# service mysqld status MySQL running (8010) [ OK ]
執行這一步的時候有可能會導致啟動不成功,錯誤訊息大概如下:
MySQL: Starting MySQL….. ERROR! The server quit without updating PID file
可參考如下連結解決:
https://icesquare.com/wordpress/mysql-starting-mysql-error-the-server-quit-without-updating-pid-file/
如果不願意麻煩,可以直接重新啟動機器也可以解決該問題
至此,mysql就安裝好並啟動成功了。
7.修改root密碼:採用
mysql -uroot -p
登入的時候,輸入前面記錄的root密碼,提示密碼不正確,沒辦法,我們只好自己去修改root密碼了
具體步驟如下:
step1:
#vim /etc/my.cnf
在[mysqld]下新增一行skip-grant-tables
step2:
#service mysqld restart後,即可直接用mysql進入
mysql> update mysql.user set authentication_string=password('root') where user='root' and Host = 'localhost'; mysql> flush privileges; mysql> quit;
step3:
#將/etc/my.cnf檔案還原,重新啟動mysql:service mysqld restart,這個時候可以使用mysql -u root -p'root'進入了
step4:
#進入到sql後以後在透過以下指令修改一次密碼,否則無法進行其他動作:
mysql> SET PASSWORD = PASSWORD('mysql');
step5:
#在sql控制台執行show databases;結果如下:
mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 4 rows in set (0.00 sec)
附:參考文檔,感謝你們的分享,正是因為你們的經驗,讓我能夠快速解決安裝過程中遇到的各種問題:
http://www.cnblogs.com/tuhooo/p/5189236.html
https://icesquare.com/wordpress/mysql-starting-mysql-error-the-server-quit-without-updating-pid-file/
以上是在CentOS 6.5上快速安裝MySQL 5.7.17的詳細內容。更多資訊請關注PHP中文網其他相關文章!