CentOS7安裝MySQL


1,下載 Yum 資源包(倉庫),下載地址為:https://dev.mysql.com/downloads/repo/yum/

 

得到鏈接地址(我這個是):https://repo.mysql.com//mysql80-community-release-el8-1.noarch.rpm

然后執行

wget https://repo.mysql.com//mysql80-community-release-el8-1.noarch.rpm

在執行命令的當前目錄中會得到mysql80-community-release-el8-1.noarch.rpm的資源包(倉庫)

2,安裝資源包(倉庫)

sudo yum install mysql80-community-release-el8-1.noarch.rpm -y

3,查看資源包(倉庫)

4,安裝

sudo yum install mysql-community-server -y

該命令默認執行安裝8.0版本的mysql,我這里需要的是5.7版本的,所以先修改配置文件,使得安裝的版本為5.7.

sudo vim /etc/yum.repos.d/mysql-community.repo

找到[mysql80-community],把enabled=1改成enabled=0

然后新增配置命令

[mysql57-community]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

保存退出

然后再執行上面的安裝命令

 

5,啟動

sudo systemctl start mysqld

查看進程

ps -aux|grep mysql

查看版本

mysql --version

 

6,鏈接數據庫

各個Linux系統連接數據庫的語法都一樣

mysql -hloaclhost -uroot -P3306 -p123456
  1. -h: host(IP地址) localhost = 127.0.0.1

  2. -u: username(用戶賬號)

  3. -p: password(密碼)

  4. -P: port(端口,默認3306)

在其他版本的LInux里,root用戶的默認密碼是空,可以不使用密碼直接登錄。但是在CentOS7里,mysql安裝完成以后,會生成一個臨時密碼。我們需要通過命令查看這個默認密碼。

sudo cat /var/log/mysqld.log |grep password

執行

mysql -uroot -p

臨時密碼登錄,無法操作數據庫

需要修改root密碼

7,修改ROOT密碼

命令:alter user root@localhost identified with mysql_native_password by '你的密碼';

alter user root@localhost identified with mysql_native_password by 'AbHc123!';

注意:mysql5.7默認安裝了密碼安全檢查插件(validate_password),默認密碼檢查策略要求密碼必須包含:大小寫字母、數字和特殊符號,並且長度不能少於8位

修改完后輸入exit;退出數據庫

然后重新登陸就可以操作數據庫了

 

8,常用操作

  1. 創建賬號,授予權限

    • 8.0之前的版本

      GRANT ALL PRIVILEGES ON *.* TO '用戶名'@'主機名' IDENTIFIED BY "密碼" WITH GRANT OPTION;

      flush privileges;   --刷新使授權生效

      命令解釋:
      GRANT:授予  

      ALL PRIVILEGES:所有的權限(也可以選擇指定權限)--select,insert,update,delete,drop,index,alter,grant,references,reload,shutdown,process,file。在這十四個權限中選擇

      主機名:表示允許用戶從哪個主機登錄,%表示允許從任意主機登錄,

      *.*:允許操作的數據庫和表,星號.星號就是所有數據里的所有表

      WITH GRANT OPTION:允許它的權限向下傳遞
    • 8.0之后的版本

      CREATE USER '用戶名'@'主機名' IDENTIFIED BY ‘密碼’;   ---------創建賬戶

      CRANT ALL ON *.* TO '用戶名'@'主機名' WITH GRANT OPTION; -----------授權
    • 創建一個用戶,允許個該用戶通過主機遠程登錄,在用上面命令創建一個允許任意主機登錄的賬號后,如

      GRANT ALL PRIVILEGES ON *.* TO 'dark'@'%' IDENTIFIED BY "123456" WITH GRANT OPTION;

      flush privileges;
    • 還要修改mysql配置文件允許遠程連接:

      # 注意:不同 mysql 版本此配置文件位置和名字可能不同
      sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf # ubuntu18.04
      sudo vim /etc/my.cnf # CentOS7

      # 然后找到將bind-address = 127.0.0.1注銷 #如果有的話
      #bind-address           = 127.0.0.1 #這段代碼的功能是只允許本機登錄

      此時一般就可以在其他主機上使用客戶端連接mysql數據庫了
      sudo mysql -u用戶名 -h 遠端服務器地址 -P3306 -p

      設置完后,如果還是不能遠程連接,檢查一下要服務器的3306端口是否已經打開(可以百度一下如何查看端口,並打開)
  2. 修改密碼

    update user set authentication_string=password('你的密碼') where user="root"
    或者
    alter user ‘用戶名’@'主機名' identified with mysql_native_password by '你的密碼';

    alter對密碼有安全規范要求,不能設置簡單密碼(大小寫,數字,字符,無序)

    update不做限制

  3. 查看權限

    show grants; ---查看當前用戶的權限
    show grants for 'abc'@'localhost'; ---查看用戶abc的權限
  4. 回收權限

    revoke all privileges on *.* from 'abc'@localhost';   --回收用戶abc的所有權限
    revoke grant option on *.* from 'abc'@localhost';   --回收權限的傳遞
  5. 刪除用戶

    use mysql;
    select host, user from user;
    drop user 用戶名@'%';

     

第三方工具:mycli

  1. 安裝:sudo pip3 install mycil ubuntu可以直接使用 sudo apt update sudo apt install mycli

  2. 安裝好后連接數據庫:mycil -uroot

  3. 設置回車可以換行:vim ~/.myclirc 把里面的multi_line = False 改成 multi_line = True


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM