MariaDB數據庫管理系統是MySQL的一個分支,主要由開源社區在維護,採用GPL受權許可。開發這個分支的緣由之一是:甲骨文公司收購了MySQL後,有將MySQL閉源的潛在風險,所以社區採用分支的方式來避開這個風險。MariaDB的目的是徹底兼容MySQL,包括API和命令行,使之能輕鬆成爲MySQL的代替品。CentOS 7 版本將MySQL數據庫軟件從默認的程序列表中移除,用mariadb代替了。node
#列出全部被安裝的rpm package
rpm -qa | grep mariadb
#卸載
rpm -e mariadb-libs-5.5.37-1.el7_0.x86_64
錯誤:依賴檢測失敗:
libmysqlclient.so.18()(64bit) 被 (已安裝) postfix-2:2.10.1-6.el7.x86_64 須要
libmysqlclient.so.18(libmysqlclient_18)(64bit) 被 (已安裝) postfix-2:2.10.1-6.el7.x86_64 須要
#強制卸載,由於沒有--nodeps
rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64mysql
mysql下載地址:https://dev.mysql.com/downloads/mysql/sql
下載完以後解壓:tar -xf mysql-5.7.21-1.el7.x86_64.rpm-bundle.tar數據庫
解壓出來的東西:centos
libaio-0.3.109-13.el7.x86_64.rpm 下載地址:http://mirror.centos.org/centos/6/os/x86_64/Packages/libaio-0.3.107-10.el6.x86_64.rpmtcp
安裝相互依賴的包要安裝順序安裝:ide
rpm -ivh mysql-community-common-*.rpm
rpm -ivh mysql-community-libs-*.rpm
rpm -ivh mysql-community-client-*.rpmpost
rpm -ivh libaio-0.3.107-10.el6.x86_64.rpmui
rpm -ivh mysql-community-server-*.rpmthis
安裝最後一步的時候可能會提示缺乏依賴net-toos和perl 使用yum install perl來安裝便可。
安裝完成以後要先設置一下mysql的登錄密碼
首先修改/etc/my.cnf來禁用密碼,經過mysql -uroot登陸進去後設置新密碼,而後再重啓一下就能夠用新密碼正常登陸了。
vi /etc/my.cnf 在最後一行添加skip-grant-tables 保存 退出
重啓mysql:systemctl restart mysqld.service
此時便可用mysql -uroot登錄
登錄以後修改root密碼:use mysql;
update user set authentication_string=password("TYU!@#ert") where user="root";//這個密碼必定要設置的複雜一點 符合mysql密碼強度要求 以避免之後操做的時候 提示密碼不符合mysql規則
最後要去vi /etc/my.cnf 將添加的skip-grant-tables 去掉
此時mysql是沒法被遠程鏈接的
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
systemctl stop firewalld.service #中止
systemctl disable firewalld.service #禁用
最後還要容許遠程鏈接
能夠經過修改表來實現遠程:
mysql -uroot -p
mysql> use mysql;
mysql> update user set host = '%' where user = 'root';
mysql> select host, user from user;
設置完以後要給root帳戶設置權限
grant all privileges on *.* to 'root'@'%' identified by 'TYU!@#ert' with grant option;
flush privileges;
這個時候mysql就能夠被遠程鏈接 可是 連上以後作任何操做都會提示:
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
mysql5.7第一次登陸修改root密碼
使用下面語句去修改密碼:alter user 'root'@'localhost' identified by 'xxx' PASSWORD EXPIRE NEVER account unlock;
有個密碼過時,你不指定,就是默認的值是default_password_lifetime指定的360天,須要注意下。
若是設置的密碼過於簡單會提示:ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
就是密碼不符合規則 密碼要設置的儘可能複雜 要有數字 大寫字母 特殊符號等。