<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      centos7環境使用mysql離線安裝包安裝mysql5.7

       

      服務器環境:centos7 x64

      需要安裝mysql5.7+

      一、卸載CentOS7系統自帶mariadb

      # 查看系統自帶的Mariadb
      [root@CDH-141 ~]# rpm -qa|grep mariadb
      mariadb-libs-5.5.44-2.el7.centos.x86_64

      # 麒麟服務器系統
      [root@Kylin-Host-V10 ~]# rpm -qa|grep -i mysql
      mysql-5.1.73-8.el6_8.ns6.01.x86_64
      mysql-devel-5.1.73-8.el6_8.ns6.01.x86_64
      mysql-libs-5.1.73-8.el6_8.ns6.01.x86_64

      # 卸載系統自帶的Mariadb(rpm -ev --nodeps)
      [root@CDH-141 ~]# rpm -ev --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64

      # 刪除etc目錄下的my.cnf
      [root@CDH-141 ~]# rm /etc/my.cnf

      # 查找出mysql對應的目錄 find / -name mysql # 刪除對應的mysql目錄
      rm -rf ***
      上面查出來的名字,
      刪除完后再次執行find / -name mysql進行確認
       

      二、檢查mysql是否存在

      # 檢查mysql是否存在
      [root@CDH-141 ~]# rpm -qa | grep mysql
      [root@CDH-141 ~]# 

      三、查看用戶和組是否存在

      1)檢查mysql組合用戶是否存在

      # 檢查mysql組和用戶是否存在,如無則創建
      [root@CDH-141 ~]# cat /etc/group | grep mysql
      [root@CDH-141 ~]# cat /etc/passwd | grep mysql 

      # 查詢全部用戶(只是做記錄,沒必要執行)

      [root@CDH-141 ~]# cat /etc/passwd|grep -v nologin|grep -v halt|grep -v shutdown|awk -F ":" '{print $1 "|" $3 "1" $4}' | more
      root|010 sync|510 flume|9921989 hdfs|9911988 zookeeper|9891986 llama|9881985 httpfs|9871984 mapred|9861983 sqoop|9851982 yarn|9841981 kms|9831980 hive|9821979 oozie|9801977 hbase|9781975 impala|9761973 hue|9741971 wlaqzc2018|100111001
      [root@CDH-141 mysql]#

      2)若不存在,則創建mysql組和用戶# 創建mysql用戶組

      # 創建mysql用戶組
      [root@CDH-141 ~]# groupadd mysql

      # 創建一個用戶名為mysql的用戶,并加入mysql用戶組 [root@CDH-141 ~]# useradd -g mysql mysql

      注:mysql用戶正常情況下只用于mysql程序初始化和啟動,因此,為安全考慮可禁用Centos的mysql用戶ssh登陸權限。
      # 制定password 為111111  (用戶mysql的密碼)
      [root@CDH-141 ~]# passwd mysql
      Changing password for user mysql. New password: BAD PASSWORD: The password is a palindrome Retype new password: passwd: all authentication tokens updated successfully.

      四、下載mysql離線安裝包tar文件

      官網下載地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads

      版本選擇,可以選擇一下兩種方式:

       

      1)使用Red Hat Enterprise Linux

         Select Version:5.7.35
         Select Operating System:Red Hat Enterprise Linux / Oracle Linux
         Select OS Version:Red Hat Enterprise Linux 7 / Oracle Linux 7 (x86, 64-bit)
         列表中下載:
         Compressed TAR Archive:(mysql-5.7.35-el7-x86_64.tar.gz)


      2)使用Linux - Generic


        Select Version:5.7.35
        Select Operating System:Linux - Generic
        Select OS Version:Linux - Generic (glibc 2.12) (x86, 64-bit)
        列表中下載:
        Compressed TAR Archive:(mysql-5.7.35-linux-glibc2.12-x86_64.tar.gz)【本文中使用的是這個版本】

      注意:上邊兩種方式找mysql離線安裝包的方式都可以。

      五、上傳第四步下載的mysql TAR包

      # 進入/usr/local/文件夾
      [root@CDH-141 ~]# cd /usr/local/
      # 上傳mysql TAR包 [root@CDH-141 local]# rz
      # 解壓mysql-5.7.35-linux-glibc2.12-x86_64.tar.gz [root@CDH-141 local]#  mysql-5.7.35-linux-glibc2.12-x86_64.tar.gz

        注:用tar -zxvf 進行解壓可能會報錯,改成tar -xvf

      bin  full-path-to-mysql-VERSION-OS  include  lib64    mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz  share
      etc  games                          lib      libexec  sbin                                 src
      [root@CDH-141 local]# tar -zxvf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz
      mysql-5.7.25-lin
      ...
      mysql-5.7.25-linux-glibc2.12-x86_64/share/install_rewriter.sql
      mysql-5.7.25-linux-glibc2.12-x86_64/share/uninstall_rewriter.sql
      mysql-5.7.25-linux-glibc2.12-x86_64/support-files/magic
      mysql-5.7.25-linux-glibc2.12-x86_64/support-files/mysql.server
      mysql-5.7.25-linux-glibc2.12-x86_64/docs/INFO_BIN
      mysql-5.7.25-linux-glibc2.12-x86_64/docs/INFO_SRC
      [root@CDH-141 local]# ls
      bin  full-path-to-mysql-VERSION-OS  include  lib64    mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz  share
      etc  games                          lib      libexec  mysql-5.7.25-linux-glibc2.12-x86_64  sbin                                        src
      # 進入/usr/local下,修改為mysql [root@CDH-141 local]# mv mysql-5.7.35-linux-glibc2.12-x86_64 mysql
      [root@CDH-141 local]# ls bin etc full-path-to-mysql-VERSION-OS games include lib lib64 libexec mysql mysql-5.7.35-linux-glibc2.12-x86_64.tar.gz sbin share src

      六、更改所屬的組和用戶

      更改mysql 目錄下所有文件夾所屬的用戶組和用戶,以及權限

        # 更改所屬的組和用戶
      [root@CDH-141 ~]# cd /usr/local/
      ## 將 `/usr/local/mysql` 目錄及其內容的所有者和所屬組都設置為 "mysql" 用戶和 "mysql" 組 [root@CDH-141 local]# chown -R mysql:mysql /usr/local/mysql
      ## 設置目錄權限 [root@CDH-141 local]# chmod -R 755 /usr/local/mysql [root@CDH-141 local]# cd mysql/ [root@CDH-141 mysql]# mkdir data [root@CDH-141 mysql]# chown -R mysql:mysql data

      另外需要:
        mkdir -p /usr/local/mysql/log
      chmod -R 755 /usr/local/mysql/log
      說明:
      `chmod` 命令用于更改文件或目錄的權限。在給定的命中,
      `chmod -R 755 /usr/local/mysql` 用于將 `/usr/local/mysql` 目錄其內容的權限設置為755。
      權限是用于控制文件和目錄的訪問級別和操作權限的屬性。
      755 是一個三位數字權限模式,分為三個部分:所有者(Owner)、所屬組(Group)和其他用戶(Others)的權限。
      755 權限模式意味著:
      - 所有者(Owner)有讀、寫和執行權限(7:讀+寫+執行)
      - 所屬組(Group)有讀和執行權限(5:讀+執行)
      - 其他用戶(Others)有讀和執行權限(5:讀+執行)
      這樣設置權限可以確保 MySQL 目錄及其內容對所有者具有完全控制權限,
      對所屬組和其他用戶具有適當的讀和執行權限,以便使 MySQL 服務和其他需要訪問這些文件的進程能夠正常地讀取、執行和操作它們。

      參數說明:

      chown -R mysql:mysql ./

      chown [選項]... [所有者][:[組]] 文件...

        必要參數:

             -c 顯示更改的部分的信息
          -f 忽略錯誤信息
          -h 修復符號鏈接
          -R 處理指定目錄以及其子目錄下的所有文件
          -v 顯示詳細的處理信息
          -deference 作用于符號鏈接的指向,而不是鏈接文件本身
        選擇參數:
          --reference=<目錄或文件> 把指定的目錄/文件作為參考,把操作的文件/目錄設置成參考文件/目錄相同擁有者和群組
          --from=<當前用戶:當前群組> 只有當前用戶和群組跟指定的用戶和群組相同時才進行改變
          --help 顯示幫助信息
          --version 顯示版本信息

      默認路徑

      # MySQL 的安裝目錄
      basedir=/usr/local/mysql
      # MySQL 的數據目錄
      datadir=/var/lib/mysql
      # 錯誤日志文件
      log-error=/var/log/mysqld.log
      # 進程 ID 文件
      pid-file=/var/run/mysqld/mysqld.pid

      七、創建my.cnf文件

      mysql啟動時默認的配置文件為 /etc/my.cnf,當然你可以在啟動命令后使用參數 --defaults-file 來使用自定義的配置文件,如放在/usr/local/mysql/下面。

      自定義配置文件配置項時,需手動創建對應的文件/文件夾,

      例如:datadir=/usr/local/mysql/data ,需先在 /mysql/下創建 data 文件夾

      首先刪除/etc目錄下的mysql舊的配置文件(可能有也可能沒有)。然后新建一個配置文件。命令如下:

      rm /etc/my.cnf
      vi /etc/my.cnf

      配置文件中的配置內容如下:

        # 進入/usr/etc/文件夾下(刪除etc中的my.cnf)
      [root@CDH-141 ~]# cd /etc/
      # 創建my.cnf文件 [root@CDH-141 mysql]# touch my.cnf # 或者 cd ''>my.conf 或者 my.ini
      [root@CDH-141 mysql]# 
      chmod 644 my.cnf
      # 編輯my.cnf [root@CDH-141 etc]# vi my.conf
      注意:

        1.在最新的 MySQL 版本中,不再使用 `default-character-set` 這個變量來設置字符集,而是使用 `character-set-server` 進行設置。

        - 打開 MySQL 配置文件,路徑可能是 `/etc/my.cnf` 或 `/etc/mysql/mysql.conf.d/mysqld.cnf`。
        - 在 `[mysqld]` 部分中查找 `default-character-set=utf8` 這一行。
        - 將這一行改為 `character-set-server=utf8`。 
        - 保存文件并退出編輯器。
        - 重新嘗試運行 `mysql_secure_installation` 命令。

      添加配置信息(路徑自定義配)

      [client]
      port=3306
      # 設置mysql客戶端默認字符集
      default-character-set=utf8
      # 指定MySQL客戶端用來與MySQL服務器通信的本地socket文件的位置。當使用UNIX域套接字連接MySQL時,這個選項是必需的
      socket=/var/lib/mysql/mysql.sock
      
      [mysql]
      # 設置mysql客戶端默認字符集
      default-character-set=utf8
      # 指定MySQL服務器監聽的端口號。默認情況下,MySQL服務器監聽端口3306。
      port=3306
      # 指定MySQL服務器使用的UNIX域套接字文件的位置。客戶端可以通過這個socket文件連接到服務器。
      socket=/var/lib/mysql/mysql.sock
      [mysqld]
      port=3306
      # 指定MySQL服務器使用的UNIX域套接字文件的位置。客戶端可以通過這個socket文件連接到服務器。
      socket=/var/lib/mysql/mysql.sock
      # MySQL 的安裝目錄 basedir
      =/usr/local/mysql # MySQL 的數據目錄 datadir=/usr/local/mysql/data # 錯誤日志文件 log-error=/usr/local/mysql/log/mysqld.log # 進程 ID 文件 pid-file=/usr/local/mysql/pid/mysqld.pid # 最大連接數 max_connections=1000 # 允許的最大包大小 max_allowed_packet=16M # 打開表緩存的大小 table_open_cache=256 # 排序緩沖區大小 sort_buffer_size=256K # 索引緩存大小 key_buffer_size=8M # InnoDB 使用緩沖池來緩存數據和索引,以提高讀寫性能。但是,這也意味著更多的內存消耗。 innodb_buffer_pool_size=5G # InnoDB 使用日志文件來記錄所有的修改操作,以支持崩潰恢復。但是,這也意味著更大的磁盤空間消耗。 innodb_log_file_size=5G # 默認存儲引擎 default-storage-engine=InnoDB # 設置服務器ID server-id=1

      八、初始化MySQL

      1.初始化

      初始化和設置 MySQL 數據庫和文件的所有者及所屬組。

      # 進入mysql
      [root@CDH-141 local]# cd /usr/local/mysql/bin
      # 安裝mysql [root@CDH-141 mysql]# mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/

      或者自定義密碼:
      mysqld  --initialize-insecure  --user=mysql --basedir=
      /usr/local/mysql/ --datadir=/usr/local/mysql/data/

      ./mysqld =/etc/my.cnf --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

      指定配置文件:
      ./mysqld --defaults-file=/usr/local/mysql/my.cnf --initialize --user=fairy --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
         ./mysqld --defaults-file=/usr/local/mysql/my.cnf --initialize --user=fairy --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --log-error=/usr/local/mysql/log/mysqld.log --verbose


      5.7版本以后:
      mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
      8.0版本:
      建議使用`mysqld --initialize-insecure`命令



      ## 過程: 2019-03-08 18:11:07 [WARNING] mysql_install_db is deprecated. Please consider switching to mysqld --initialize 2019-03-08 18:11:24 [WARNING] The bootstrap log isn't empty: 2019-03-08 18:11:24 [WARNING] 2019-03-08T10:11:07.208602Z 0 [Warning] --bootstrap is deprecated. Please consider using --initialize instead


      參數說明:

          --initialize:打印錯誤日志、隨機密碼

          --initialize-insecure:初始化參數,可以對密碼進行定制,也就意味著初始化過程中,不會生成一個隨機的初始密碼。

          --user=mysql :管理mysql的用戶

         --basedir=/usr/local/mysql:軟件存放目錄

         --datadir=/usr/local/mysql/data:數劇存放目錄

           --defaults-file:指定配置文件所在位置

          注意:初始化時,會出現如下問題,是因為缺少依賴包,直接 安裝一個即可  yum install -y libaio-devel(注意網絡是否連接)

       

      1. `scripts/mysql_install_db --user=mysql`:這個命令是用來初始化 MySQL 數據庫的。它會在 MySQL 數據目錄中創建必要的系統表和文件,以及一些默認的配置文件。`--user=mysql` 參數指定了在初始化過程中使用 "mysql" 用戶來執行這些操作。

      2. `chown -R mysql.`:在 MySQL 數據目錄中執行這個命令,將目錄及其所有內容的所有者設置為 "root" 用戶。這通常是為了確保在數據庫初始化之后,對這些文件的訪問權限僅限于管理員。

      3. `chown -R mysql data`:這個命令將 MySQL 數據目錄中的 "data" 子目錄及其內容的所有者設置為 "mysql" 用戶。這個目錄通常存儲實際的數據庫文件,將其所有者設置為 "mysql" 用戶,以確保 MySQL 進程有權限讀取和寫入這些文件。

      綜合起來,這些命令的目的是在安裝過程中初始化 MySQL 數據庫、設置文件的所有者和所屬組,以確保 MySQL 服務能夠正常運行,并且只有管理員和 MySQL 進程能夠訪問和操作相應的文件和目錄。

      2.開機啟動配置

        [root@CDH-141 mysql]# cp ./support-files/mysql.server /etc/init.d/mysqld
      或者:
         cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
      [root@CDH-141 mysql]# ls
      bin  COPYING  data  docs  include  lib  man  my.cnf  README  share  support-files
      [root@CDH-141 mysql]# ls -l total 60 drwxr-xr-x 2 root root 4096 Mar 8 15:56 bin -rw-r--r-- 1 7161 31415 17987 Dec 21 18:39 COPYING drwxr-x--- 5 mysql mysql 4096 Mar 8 16:21 data drwxr-xr-x 2 root root 4096 Mar 8 15:56 docs drwxr-xr-x 3 root root 4096 Mar 8 15:56 include drwxr-xr-x 5 root root 4096 Mar 8 15:56 lib drwxr-xr-x 4 root root 4096 Mar 8 15:56 man -rw-r--r-- 1 777 root 516 Mar 8 16:19 my.cnf -rw-r--r-- 1 7161 31415 2478 Dec 21 18:39 README drwxr-xr-x 28 root root 4096 Mar 8 15:56 share drwxr-xr-x 2 root root 4096 Mar 8 15:56 support-files [root@CDH-141 mysql]# chmod +x /etc/init.d/mysqld [root@CDH-141 mysql]# [root@CDH-141 mysql]# mkdir data [root@CDH-141 mysql]# [root@CDH-141 mysql]# chown -R mysql:mysql data [root@CDH-141 mysql]#
       

      `cp ./support-files/mysql.server /etc/init.d/mysqld` 這個命令的作用是將 MySQL 的服務啟動腳本復制到 `/etc/init.d/` 目錄下,并將其重命名為 `mysqld`。

      在此命令中,`./support-files/mysql.server` 是 MySQL 安裝目錄下的服務啟動腳本文件的路徑。該腳本文件是用于啟動、停止和重新啟動 MySQL 服務的。

      通過將該腳本復制到 `/etc/init.d/` 目錄下,并重命名為 `mysqld`,可以將 MySQL 的服務啟動腳本添加到系統的啟動項中,使得系統啟動時可以自動啟動 MySQL 服務。

      一旦完成這個復制和重命名的過程,您就可以使用以下命令來管理 MySQL 服務:

      - 啟動 MySQL 服務:`service mysqld start`
      - 停止 MySQL 服務:`service mysqld stop`
      - 重新啟動 MySQL 服務:`service mysqld restart`

      請注意,`mysqld` 在不同的系統中可能會有一些差異,具體命名可能會稍有不同。這取決于您的系統和 MySQL 的安裝方式。

      九、啟動mysql

        # 啟動mysql
      [root@CDH-141 mysql]# /etc/init.d/mysqld restart
      # 若開機啟動沒設置成功,用以下命令:
      sudo /usr/local/mysql/bin/mysqld_safe --user=mysql &


      MySQL server PID file could not be found![FAILED] Starting MySQL.Logging to '/usr/local/mysql/data/CDH-141.err'. ..The server quit without updating PID file (/usr/local/mysql/data/CDH-141.pid).[FAILED] [root@CDH-141 mysql]#

      出現錯誤,解決方案如下:

      #找到是否已經有進程占用
      [root@CDH-141 mysql]# ps aux|grep mysql
      root     32483  0.0  0.0 113252  1620 pts/0    S    18:04   0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/CDH-141.pid
      mysql    32684  0.1  0.1 1119892 178224 pts/0  Sl   18:04   0:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=CDH-141.err --pid-file=/usr/local/mysql/data/CDH-141.pid --port=3323
      root     35137  0.0  0.0 112648   944 pts/0    S+   18:12   0:00 grep --color=auto mysql
      
      #關閉進程
      [root@CDH-141 mysql]# kill -9 32684
      [root@CDH-141 mysql]# /usr/local/mysql/bin/mysqld_safe: line 198: 32684 Killed                  nohup /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=CDH-141.err --pid-file=/usr/local/mysql/data/CDH-141.pid --port=3323 < /dev/null > /dev/null 2>&1
      
      #確認是否還占用
      [root@CDH-141 mysql]#  ps aux|grep mysql
      root     35501  0.0  0.0 112644   948 pts/0    S+   18:13   0:00 grep --color=auto mysql
      [root@CDH-141 mysql]# /etc/init.d/mysqld restart
      MySQL server PID file could not be found![FAILED]
      Starting MySQL..[  OK  ]
      [root@CDH-141 mysql]#
      
      # 重啟mysql
      [root@CDH-141 mysql]# /etc/init.d/mysqld restart
      Shutting down MySQL..[  OK  ]
      Starting MySQL..[  OK  ]
      [root@CDH-141 mysql]# 
      
      
      
      在Linux<CentOS>服務器上安裝Mysql,由于Centos自身的yum源中用Mysql的分支Mariadb代替了MySQL,所以不得不選擇rpm或tar.gz包的方式安裝,
      但是為了以后在其他LInux如Ubuntu中也能熟練安裝MySQL,所以推薦使用tar.gz
      
      運行命令:service mysqld start 出現如下錯誤: Starting MySQL.Logging to
      '/usr/mysql/mysql-5.7.35/data/localhost.localdomain.err'. 2021-08-13T01:01:52.896471Z mysqld_safe Directory '/var/lib/mysql' for UNIX socket file don't exists. ERROR! The server quit without updating PID file (/usr/mysql/mysql-5.7.35/data/localhost.localdomain.pid). 執行命令:cat /usr/local/mysql/data/localhost.localdomain.err查看錯誤原因 error內容如下: [ERROR] Can't start server : Bind on unix socket: Permission denied [ERROR] Do you already have another mysqld server running on socket: /var/lib/mysql/mysql.sock ? 結合先前寫入配置/etc/my.cnf: 由上不難理解—— 第一: mysqld_safe Directory '/var/lib/mysql' for UNIX socket file don't exists.var/lib/mysql”目錄不存在,首要先創建: mkdir /var/lib/mysql 第二: Mysql客戶端和服務器端是通過初始化mysql.sock 文件來進行通信,所以服務器在啟動時需要寫入該文件,因此該文件所存放的目錄必須雙方都 具有訪問權限。而異常日志中表示: [ERROR] Can't start server : Bind on unix socket: Permission denied 所以,MySQL服務不具備目錄 /var/lib/mysql 的寫入權限,無法生成mysql.sock文件,自然服務啟動時無法找到該文件。 給目錄 /var/lib/mysql 付予寫入權限或者最大權限 chmod 777 /var/lib/mysql 最終: ———————————————— 版權聲明:本文為CSDN博主「公眾號:流花鬼」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。 原文鏈接:https://blog.csdn.net/qq_32331073/article/details/76229420

       

      十、設置開機啟動

        #設置開機啟動
      [root@CDH-141 mysql]# chkconfig --level 35 mysqld on
      [root@CDH-141 mysql]# chkconfig --list mysqld

      systemctl enable mysqld
             systemctl start mysqld
      Note: This output shows SysV services only and does not include native
            systemd services. SysV configuration data might be overridden by native
            systemd configuration.
      
            If you want to list systemd services use 'systemctl list-unit-files'.
            To see services enabled on particular target use
            'systemctl list-dependencies [target]'.
      
      mysqld          0:off   1:off   2:on    3:on    4:on    5:on    6:off
      [root@CDH-141 mysql]# chmod +x /etc/rc.d/init.d/mysqld
      [root@CDH-141 mysql]# chkconfig --add mysqld
      [root@CDH-141 mysql]# chkconfig --list mysqld
      
      Note: This output shows SysV services only and does not include native
            systemd services. SysV configuration data might be overridden by native
            systemd configuration.
      
            If you want to list systemd services use 'systemctl list-unit-files'.
            To see services enabled on particular target use
            'systemctl list-dependencies [target]'.
      
      mysqld          0:off   1:off   2:on    3:on    4:on    5:on    6:off
      
      [root@CDH-141 mysql]# service mysqld status MySQL running (26122)[ OK ] [root@CDH-141 mysql]#

      注:
      關閉mysql
          service mysqld stop
      重啟mysql
          service mysqld restart

      十一、修改配置文件

      將MySQL的bin目錄添加到系統的PATH環境變量中

        # 進入/etc/profile文件夾
      [root@CDH-141 mysql]# vim /etc/profile
      修改/etc/profile,在最后添加如下內容 # 修改/etc/profile文件 #set mysql environment export PATH=$PATH:/usr/local/mysql/bin
      # 使文件生效 [root@CDH-141 mysql]# source /etc/profile

      十二、獲得mysql初始密碼

       1)獲得mysql初始密碼

      [root@CDH-141 mysql]#  cat /root/.mysql_secret
      # Password set for user 'root@localhost' at 2019-03-08 17:40:42 poc3u0mO_luv [root@CDH-141 mysql]#
      -w=DdwO1fdze

      也可以在日志中找

      2)修改密碼

        [root@CDH-141 mysql]# mysql -uroot -p
      
      Enter password: #此處填寫上邊獲取到的初始密碼‘poc3u0mO_luv’
      Welcome to the MySQL monitor.  Commands end with ; or \g.
      Your MySQL connection id is 2
      Server version: 5.7.25
      
      Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
      Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.
      Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
      
        set PASSWORD = PASSWORD('123456');
      Query OK, 0 rows affected, 1 warning (0.00 sec)
      
       flush privileges;
      Query OK, 0 rows affected (0.00 sec)
      
       exit
      Bye


      備注:

      修改密碼時報錯:
      Can't connect to local MySQL server through socket '/tmp/mysql.sock'

      上述提示可能在啟動mysql時遇到,即在/tmp/mysql.sock位置找不到所需要的mysql.sock文件,主要是由于my.cnf文件里對mysql.sock的位置設定導致。

      mysql.sock默認的是在/var/lib/mysql, 如果發現確實是在該目錄下,可以在[mysqld]下面加入mysql.sock的path

      vi /etc/my.cnf(my.cnf也可能在其他路徑下)

      [mysqld]

      port = 3306

      socket = /var/lib/mysql/mysql.sock

      但是要保證使用mysql的用戶具有對該目錄的寫權限,否則這樣的改動由于權限限制仍然會報錯。

      所以為了避免權限問題也可以使用軟鏈接為/var/lib/mysql/mysql.sock創建一個到/tmp/mysql.sock的聯接

      ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock

      由于/tmp/文件夾默認對other有w權限,這樣就可以避免權限問題。

      此外,如果發現mysql.sock不在默認的/var/lib/mysql位置,一種解決方法是使用find命令搜索mysql.sock的位置,然后按前面兩種解決方案挑一種做即可。


      ————————————————
      版權聲明:本文為CSDN博主「rush 2」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
      原文鏈接:https://blog.csdn.net/weixin_33026067/article/details/113219372

      輸入密碼報錯解決方法:

      ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using passwor

      跳過MySQL的密碼認證過程,方法如下:

      vim /etc/my.cnf (注:windows下修改的是my.ini)

      在[mysqld]后面任意一行添加“skip-grant-tables”用來跳過密碼驗證的過程,如下圖所示:

      保存文檔并退出

      重啟MySQL:

      service mysqld restart 

      4.重啟之后輸入:

      mysql

      修改root的密碼

      mysql> update user set password=password("你的新密碼") where user="root";
      mysql> flush privileges;
      mysql> quit

      # mysql數據庫下已經沒有password這個字段了,password字段改成了authentication_string
      mysql> update mysql.user set authentication_string=PASSWORD('password') where User='root';
      Query OK, 1 row affected, 1 warning (0.15 sec)
      Rows matched: 1 Changed: 1 Warnings: 1
      mysql> flush privileges;
      mysql> quit

      到這里root賬戶就已經重置成新的密碼了。

      編輯my.cnf

      去掉剛才添加的內容,然后重啟MySQL。

      vim /etc/my.cnf

      另一種方法:

      1. 關閉MySQL服務器。
         在命令行或終端中執行以下命令關閉MySQL服務器:
         ```bash
         sudo service mysqld stop
         ```
      2. 啟動MySQL服務器并跳過授權表。
         在命令行或終端中使用以下命令啟動MySQL服務器,并在忽略授權表的情況下運行:
         ```bash
         sudo mysqld_safe --skip-grant-tables &
         ```
      3. 打開一個新的命令行或終端,使用管理員權限的賬戶登錄到MySQL數據庫。
         ```bash
         sudo mysql
         ```
      4. 執行以下命令來更新`root`用戶的密碼:
         ```sql
         UPDATE mysql.user SET authentication_string=PASSWORD('Wtf123456') WHERE User='root' AND Host='localhost';
         ```
         這會將`root`用戶的密碼更改為`Wtf123456`。注意替換為你想要設置的新密碼。
      5. 刷新權限表,并退出MySQL數據庫。
         執行以下命令刷新權限表:
         ```sql
         FLUSH PRIVILEGES;
         ```
         然后執行以下命令退出MySQL數據庫:
         ```sql
         exit;
         ```
      6. 關閉MySQL服務器。
         在原來的命令行或終端中執行以下命令關閉MySQL服務器:
         ```bash
         sudo service mysqld stop
         ```
      7. 再次啟動MySQL服務器。
         執行以下命令重新啟動MySQL服務器:
         ```bash
         sudo service mysqld start
         ```
      此時,你應該可以使用新密碼`Wtf123456`登錄到MySQL數據庫了。

      3)驗證新密碼是否登錄成功:

       
      [root@CDH-141 mysql]# mysql -uroot -p
      Enter password: #此處輸入新密碼‘123456’ Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 4 Server version: 5.7.25 MySQL Community Server (GPL) Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. show tables; ERROR 1046 (3D000): No database selected show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 4 rows in set (0.00 sec)

      十三、添加遠程訪問權限

        # 添加遠程訪問權限
       use mysql
      Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed update user set host='%' where user='root'; Query OK, 1 row affected (0.00 sec) Rows matched: 1 Changed: 1 Warnings: 0 select host,user from user(或者mysql.user); +-----------+---------------+ | host | user | +-----------+---------------+ | % | root | | localhost | mysql.session | | localhost | mysql.sys | +-----------+---------------+ 3 rows in set (0.00 sec)

      注:先使用use mysql切換到mysql數據庫,然后用select host, user from user列出
      user表中所有的用戶及對應的host地址,其中host對應允許訪問的主機的ip,“
      %”表示允許所有的ip訪問該數據庫,user對應于用戶名。
      root用戶允許所有的ip來連接此數據庫,而mysql.sys用戶只允許通過本地訪問。

        給特定的用戶屬于權限的指令:

        grant all privileges on *.* to ’user_name'@'host_name';

        flush privileges;

        eg:(root用戶)

      grant all privileges on *.* to 'root'@'%';

        flush privileges;

      注:

        第一條指令是授予權限,第二條是讓授予的權限生效;第一條指令中*.*表示所有的數據庫中的所有的表,

        如果對應于特定的數據庫的特定表的權限就可以使用“databaseName.tableName"來授予相應的對象。

      擴展:

      1,設置訪問單個數據庫權限

      grant all privileges on test.* to 'root'@'%';

      說明:設置用戶名為root,密碼為空,可訪問數據庫test
       
       2,設置訪問全部數據庫權限

      grant all privileges on *.* to 'root'@'%';

      說明:設置用戶名為root,密碼為空,可訪問所有數據庫*
       
       3,設置指定用戶名訪問權限

      grant all privileges on *.* to 'tempuser'@'%';

      說明:設置指定用戶名為tempuser,密碼為空,可訪問所有數據庫*
       
       4,設置密碼訪問權限

      grant all privileges on *.* to 'mysql'@'%' IDENTIFIED BY '123456';

      說明:設置指定用戶名為mysql,密碼為123456,可訪問所有數據庫*
       
       5,設置指定可訪問主機權限

      grant all privileges on *.* to 'tempuser'@'192.168.1.258';

      說明:設置指定用戶名為tempuser,可訪問所有數據庫*,只有192.168.1.258這臺機器有權限訪問

      6,給Mysql添加遠程訪問權限的方法

      user:myuser  pwd:mypassword 從任何主機連接到mysql服務器

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

      user:myuser  pwd:mypassword 從192.168.1.3連接到mysql服務器

      GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

      7,修改密碼

      當你在MySQL數據庫中創建一個新用戶或者修改一個已有用戶的密碼后,MySQL會要求你在第一次登錄時重置密碼,以提高安全性。這是為了確保只有用戶本人能夠設置他們的密碼。

      其中,將`用戶名`替換為你要重置密碼的用戶的用戶名,`主機名`表示你要允許該用戶登錄的主機名(可以是`localhost`,也可以是其他允許訪問的主機),`新密碼`表示你想要設置的新密碼。

      3. 重置密碼之后,用戶應該能夠使用新密碼登錄,并且在登錄后會要求他們修改密碼。

      總之,初始或需要更新密碼的用戶必須在執行其他語句之前先使用`ALTER USER`命令重置密碼。這是為了保證數據庫的安全性和用戶權限的正確性。

      ALTER USER '用戶名'@'主機' IDENTIFIED BY '新密碼';

      十四、重啟mysql生效

      # 重啟mysql
      [root@CDH-141 mysql]# 
      Shutting down MySQL..[ OK ] Starting MySQL..[ OK ] [root@CDH-141 mysql]#
      備注:
          由于安裝在/usr/local下面的mysql,因此可以在熱河文件夾啟動mysql
          若安裝在別的文件夾,請執行以下命令:
      
      # 為了在任何目錄下可以登錄mysql ln -s /你的mysql路徑/mysql /usr/local/mysql

      申明原貼:http://www.rzrgm.cn/yy3b2007com/p/10497787.html

       

       

       

      posted @ 2019-08-19 19:51  O波V步  閱讀(10078)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 岛国岛国免费v片在线观看| 九九热免费精品视频在线| 一本色道久久东京热| 久爱www人成免费网站| 精品无码国产污污污免费| 日韩不卡1卡2卡三卡网站| 在线观看中文字幕码国产| 男女性高爱潮免费网站| 国内免费视频成人精品| 广南县| 亚洲一品道一区二区三区| 重口SM一区二区三区视频| 国产综合有码无码中文字幕| 一区三区在线专区在线| 国产成人精品亚洲午夜| 国产成人理论在线视频观看| 绵竹市| 亚洲高潮喷水无码AV电影| AV最新高清无码专区| 国产成人免费| 亚洲欧美中文字幕日韩一区二区 | 亚洲国产午夜福利精品| 一区二区不卡国产精品| 午夜爽爽爽男女污污污网站| 四虎国产精品永久入口| 潮喷失禁大喷水av无码| 国产日韩av二区三区| 产综合无码一区| 成人免费乱码大片a毛片| 班玛县| 任我爽精品视频在线播放| 起碰免费公开97在线视频| 国偷自产一区二区三区在线视频| 亚洲欧洲一区二区天堂久久| 无码午夜福利片| 性色av一区二区三区v视界影院| 国产精品大全中文字幕| 日本丰满熟妇hd| 狠狠色丁香婷婷综合尤物| 吃奶还摸下面动态图gif| 成人中文在线|