卸載mariadb
CentOS7默認安裝MariaDB而不是MySQL,而且yum服務器上也移除了MySQL相關的軟件包。因為MariaDB和MySQL可能會沖突,故先卸載MariaDB。
1、安裝新版mysql之前,我們需要將系統自帶的mariadb-lib卸載
[root@iZwz94qazh62gk5ewl4ei2Z home]# rpm -qa | grep -i mariadb mariadb-libs-5.5.52-1.el7.x86_64 [root@iZwz94qazh62gk5ewl4ei2Z home]# rpm -e --nodeps mariadb-libs-5.5.52-1.el7.x86_64
2、到mysql的官網下載最新版mysql的rpm集合包:mysql-5.7.18-1.el6.x86_64.rpm-bundle.tar
3、上傳mysql-5.7.18-1.el6.x86_64.rpm-bundle.tar到linux服務器,并解壓tar包
[root@iZwz94qazh62gk5ewl4ei2Z home]# mkdir mysql [root@iZwz94qazh62gk5ewl4ei2Z home]# tar -xf mysql-5.7.18-1.el6.x86_64.rpm-bundle.tar -C mysql [root@iZwz94qazh62gk5ewl4ei2Z home]# cd mysql [root@iZwz94qazh62gk5ewl4ei2Z mysql]# ll total 459492-rw-r--r-- 1 7155 31415 23618836 Mar 20 17:40 mysql-community-client-5.7.18-1.el6.x86_64.rpm-rw-r--r-- 1 7155 31415 335496 Mar 20 17:40 mysql-community-common-5.7.18-1.el6.x86_64.rpm-rw-r--r-- 1 7155 31415 3747352 Mar 20 17:40 mysql-community-devel-5.7.18-1.el6.x86_64.rpm-rw-r--r-- 1 7155 31415 39086508 Mar 20 17:40 mysql-community-embedded-5.7.18-1.el6.x86_64.rpm-rw-r--r-- 1 7155 31415 135869292 Mar 20 17:40 mysql-community-embedded-devel-5.7.18-1.el6.x86_64.rpm-rw-r--r-- 1 7155 31415 2177064 Mar 20 17:40 mysql-community-libs-5.7.18-1.el6.x86_64.rpm-rw-r--r-- 1 7155 31415 1723180 Mar 20 17:40 mysql-community-libs-compat-5.7.18-1.el6.x86_64.rpm-rw-r--r-- 1 7155 31415 159060212 Mar 20 17:41 mysql-community-server-5.7.18-1.el6.x86_64.rpm-rw-r--r-- 1 7155 31415 104881084 Mar 20 17:41 mysql-community-test-5.7.18-1.el6.x86_64.rpm
4、使用rpm -ivh命令進行安裝
[root@iZwz94qazh62gk5ewl4ei2Z mysql]# -community-common-.-.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature, key /:mysql-community-common-.-.e################################# [-community-libs-.-.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature, key /:mysql-community-libs-.-.el6################################# [-community-client-.-.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature, key /:mysql-community-client-.-.e################################# [-community-server-.-.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature, key /:mysql-community-server-.-.e################################# [
上面幾個包有依賴關系,執行有先后。
使用rpm安裝方式安裝mysql,安裝的路徑如下:
a 數據庫目錄
/var/lib/mysql/
b 配置文件
/usr/share/mysql(mysql.server命令及配置文件)
c 相關命令
/usr/bin(mysqladmin mysqldump等命令)
d 啟動腳本
/etc/rc.d/init.d/(啟動腳本文件mysql的目錄)
e /etc/my.conf
5、 數據庫初始化
為了保證數據庫目錄為與文件的所有者為 mysql 登陸用戶,如果你的linux系統是以 root 身份運行 mysql 服務,需要執行下面的命令初始化
[root@iZwz94qazh62gk5ewl4ei2Z mysql]# mysqld --initialize --user=mysql
如果是以 mysql 身份登錄運行,則可以去掉 –user 選項。
另外 –initialize 選項默認以“安全”模式來初始化,則會為 root 用戶生成一個密碼并將該密碼標記為過期,登陸后你需要設置一個新的密碼,
而使用 –initialize-insecure 命令則不使用安全模式,則不會為 root 用戶生成一個密碼。
這里演示使用的 –initialize 初始化的,會生成一個 root 賬戶密碼,密碼在log文件里,紅色區域的就是自動生成的密碼
[root@iZwz94qazh62gk5ewl4ei2Z mysql]# cat /var/log/mysqld.log2017-06-05T14:30:52.709474Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).2017-06-05T14:30:55.590590Z 0 [Warning] InnoDB: New log files created, LSN=457902017-06-05T14:30:56.000269Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.2017-06-05T14:30:56.109868Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 960c533e-49fb-11e7-91f2-00163e089fd2.2017-06-05T14:30:56.116186Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.2017-06-05T14:30:56.116777Z 1 [Note] A temporary password is generated for root@localhost: :Wu?2QQutQwj
?現在啟動mysql數據庫systemctl start mysqld.service(Centos7特有的啟動方式)
[root@iZwz94qazh62gk5ewl4ei2Z mysql]# systemctl start mysqld.service
可以使用下面兩個命令對mysql進行停止,啟動和重啟:
啟動:
使用 service 啟動:service mysqld start 使用 mysqld 腳本啟動:/etc/inint.d/mysqld start 使用 safe_mysqld 啟動:safe_mysqld&
停止:
使用 service 啟動:service mysqld stop 使用 mysqld 腳本啟動:/etc/inint.d/mysqld stop mysqladmin shutdown
重啟:
使用 service 啟動:service mysqld restart 使用 mysqld 腳本啟動:/etc/inint.d/mysqld restart
連接數據庫
[root@iZwz94qazh62gk5ewl4ei2Z mysql]# mysql -u root -p Enter password:
密碼輸入: ?:Wu?2QQutQwj
修改密碼:
set password = password('你的密碼');
設置遠程訪問
grant all privileges on *.* to 'root' @'%' identified by '123456'; flush privileges;
設置mysql開機啟動
加入到系統服務: chkconfig --add mysqld 自動啟動: chkconfig mysqld on 查詢列表: chkconfig 說明:都沒關閉(off)時是沒有自動啟動。
?
flush privileges;