1. 程式人生 > >在Linux下給mysql建立使用者並分配許可權及問題解決方案

在Linux下給mysql建立使用者並分配許可權及問題解決方案

1.新建使用者

  //登入MYSQL
  @>mysql -u root -p
  @>密碼
  //建立使用者
  mysql> insert into mysql.user(Host,User,Password) values(‘localhost’,'jeecn’,password(‘jeecn’));
  //刷新系統許可權表
  mysql>flush privileges;
  這樣就建立了一個名為:jeecn  密碼為:jeecn  的使用者。
  //退出後登入一下
  mysql>exit;
  @>mysql -u jeecn -p
  @>輸入密碼
  mysql>登入成功

  2.為使用者授權
  //登入MYSQL(有ROOT許可權)。我裡我以ROOT身份登入。
  @>mysql -u root -p
  @>密碼
  //首先為使用者建立一個數據庫(jeecnDB)
  mysql>create database jeecnDB;
  //授權jeecn使用者擁有jeecn資料庫的所有許可權
  @>grant all privileges on jeecnDB.* to [email protected] identified by ‘jeecn’;
  //刷新系統許可權表
  mysql>flush privileges;
  mysql>其它操作

  //如果想指定部分許可權給一使用者,可以這樣來寫:
  mysql>grant select,update on jeecnDB.* to [email protected] identified by ‘jeecn’;
  //刷新系統許可權表。
  mysql>flush privileges;
  mysql> grant 許可權1,許可權2,…許可權n on 資料庫名稱。表名稱 to 使用者名稱@使用者地址 identified by ‘連線口令’;
  許可權1,許可權2,…許可權n代表select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14個許可權。

  當權限1,許可權2,…許可權n被all privileges或者all代替,表示賦予使用者全部許可權。
  當資料庫名稱。表名稱被*.*代替,表示賦予使用者操作伺服器上所有資料庫所有表的許可權。
  使用者地址可以是localhost,也可以是ip地址、機器名字、域名。也可以用’%’表示從任何地址連線。
  ‘連線口令’不能為空,否則建立失敗。
  例如:
  mysql>grant select,insert,update,delete,create,drop on vtdc.employee to [email protected] identified by ‘123′;
  給來自10.163.225.87的使用者jee分配可對資料庫vtdc的employee表進行select,insert,update,delete,create,drop等操作的許可權,並設定口令為123。
  mysql>grant all privileges on vtdc.* to [email protected] identified by ‘123′;
  給來自10.163.225.87的使用者jee分配可對資料庫vtdc所有表進行所有操作的許可權,並設定口令為123。
  mysql>grant all privileges on *.* to [email protected] identified by ‘123′;
  給來自10.163.225.87的使用者jee分配可對所有資料庫的所有表進行所有操作的許可權,並設定口令為123。
  mysql>grant all privileges on *.* to [email protected] identified by ‘123′;
  給本機使用者jee分配可對所有資料庫的所有表進行所有操作的許可權,並設定口令為123。
  3.刪除使用者
  @>mysql -u root -p
  @>密碼
  mysql>DELETE FROM mysql.user WHERE User=”jeecn”
  mysql>flush privileges;
  //刪除使用者的資料庫
  mysql>drop database jeecnDB;
  4.修改指定使用者密碼
  @>mysql -u root -p
  @>密碼
  mysql>update mysql.user set password=password(‘新密碼’) where User=”jeecn” and Host=”localhost”;
  mysql>flush privileges;

  mysql>quit;

5.如果使用root無法連線本地庫的話:

提示:1045 access denied for user 'root'@'localhost' using password yes
前幾天都好好的,昨天沒弄,結果今天晚上過來提示上面的這個錯誤,重啟mysql還是不可以
網上的方法看了幾個但是不知道怎麼弄
方法一: 
# /etc/init.d/mysql stop 
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking & 
# mysql -u root mysql 
mysql> UPDATE user SET Password=PASSWORD(’newpassword’) where USER=’root’; 
mysql> FLUSH PRIVILEGES; 
mysql> quit 
# /etc/init.d/mysql restart 
# mysql -uroot -p 
Enter password: <輸入新設的密碼newpassword> 
mysql> 
方法二: 
直接使用/etc/mysql/debian.cnf檔案中[client]節提供的使用者名稱和密碼: 
# mysql -udebian-sys-maint -p 
Enter password: <輸入[client]節的密碼> 
mysql> UPDATE mysql.user SET Password=PASSWORD(’newpassword’) where USER=’root’; 
mysql> FLUSH PRIVILEGES; 
mysql> quit 
# mysql -uroot -p 
Enter password: <輸入新設的密碼newpassword> 
mysql> 

相關推薦

Linuxmysql建立使用者分配許可權問題解決方案

1.新建使用者   //登入MYSQL  @>mysql -u root -p  @>密碼  //建立使用者  mysql> insert into mysql.user(Host,User,Password) values(‘localhost’,'j

Linux 伺服器上建立使用者分配許可權

  此貼轉自:https://www.cnblogs.com/SH-xuliang/p/8422753.html 檢視使用者 1 whoami #要檢視當前登入使用者的使用者名稱 2 who am i #表示開啟當前偽終端的使用者的使用者名稱 3 who mom likes

如何在linux安裝mysql資料庫配置

1.查詢以前是否安裝有mysql,使用下面命令: rpm -qa|grep -i mysql 如果顯示有如下包則說明已安裝mysql mysql-4.1.12-3.RHEL4.1 mysqlclient10-3.23.58-4.RHEL4.1 2.如果已安裝,則需要刪除已安裝的資料庫,使用以下命令來

linux 安裝 MySQL 經常出現各種問題終極解決方法 /var/run/mysqld/mysqld.sock /var/run/mysqld/mysqld.pid

以為 ubuntu 12.04 為例: 安裝 MySQL  5.5 ,方法如下: wget http://sourceforge.net/projects/mysql.mirror/files/MySQL%205.5.27/mysql-5.5.27-linux

Linux操作mysql的常用語句,以及解決在putty中不能夠輸入中文的問題

前言,伺服器買了一個Linux作業系統,接下來就和命令列分不開了,對於在命令列 中操作mysql還沒有多少經驗,在網上找了幾個文章看了,在這裡來總結以後 注意在資料庫中的操作一定都要以分號(;)結尾

Linux zip 檔案解壓產生中文亂碼解決方案

unar方法 1.安裝unar yum install unar 這個最簡單省力,預設debian已經安裝了額unar,這個工具會自動檢測檔案的編碼,也可以通過-e來指定 2.用unar解

Linuxpython工具不顯示圖形介面的解決方案

一、命令列輸入jupyter-notebook沒反應那是因為需要到圖形介面下開啟瀏覽器輸入http://localhost:8888/tree才可以,第一次登陸的時候還需要填寫一個token,在命令列有提示二、命令列輸入Spyder沒反應Linux 下給Spyder建立桌面快

linuxfirefox瀏覽器的flash版本過低解決方案

  我的系統為linux下的centOS,最近用瀏覽器是總是彈出flash版本過低,選擇總是允許後下次啟動瀏覽器還是不行,於是尋找一勞永逸的方法:     開啟瀏覽器輸入:http://get.adobe.com/cn/flashplayer/     網頁會判斷作業系統和

CentOS 7 安裝MySQL 5.6遇到問題解決方案

linux localhost not ces name 解決 info target case centos下安裝mysql真的沒有想象中那麽容易,在這裏我總結一下遇到的問題 1. ERROR 2002 (HY000): Can’t connect to loca

MySQL主從 常見的錯誤解決方案

數據對比 線程 redirect 創建 主鍵 不一致 執行 如果 避免 一、錯誤日誌解析: (1) 【ERROR】1452:無法在外鍵的表插入參考主鍵沒有的數據 1452:無法在外鍵的表插入或更新參考主鍵沒有的數據。由於item_discovery.it

vue部署docker的nginx刷新404問題解決方案

onf fig loading ror ins gin 通過 設置 run 環境描述 本次環境是通過jenkins編譯npm run build 或者UMI_ENV=dev umi build 生成dist目錄通過Dockerfile build一個新鏡像上傳私服通過s

解析Mysql 主從同步延遲原理解決方案

  MySQL的主從同步是一個很成熟的架構,優點為:①在從伺服器可以執行查詢工作(即我們常說的讀功能),降低主伺服器壓力;②在從主伺服器進行備份,避免備份期間影響主伺服器服務;③當主伺服器出現問題時,可以切換到從伺服器。 相信大家對於這些好處已經非常瞭解了,在專案的部署中也採用

談談Mysql主從同步延遲分析解決方案

一、MySQL的資料庫主從複製原理 MySQL主從複製實際上基於二進位制日誌,原理可以用一張圖來表示: 分為四步走: 1. 主庫對所有DDL和DML產生的日誌寫進binlog; 2. 主庫生成一個 log dump 執行緒,用來給從庫I/O執行緒讀取binlog;

[偶爾遇到]找不到mysql.sock的出現原因解決方案mysql 預設mysql.sock位置預設問題探討 不指定

背景:(1)偶爾會出現mysql的server和mysql的client預設的socke檔案不在一個地方,我們用mysql時會出現一個找不到mysql.sock的情況。(2)因非正常關機出現:/tmp/mysql.sock 不見了,找不到了,如何連線上去的問題?(其他機器通過

Windows開發Hadoop程式遇到的坑解決方案

背景 過幾天工作需要用到Hadoop,於是就弄了本PDF看。看了半天也是暈暈乎乎的。乾脆直接動手,這樣還能掌握的快一點。於是我就在本地要搭建一個Hadoop的開發環境。 環境前提 1、Hadoop部署在測試伺服器上。 2、開發人員在Windows上使用eclipse進行

Azure Linux 虛機上配置 RAID 的常見問題解決方案

簡介 獨立硬碟冗餘陣列(RAID, Redundant Array of Independent Disks),簡稱磁碟陣列。能增強資料整合度,增強容錯功能,增加處理量或容量。詳情參見這篇文章。 配置方法 Note 以下範例均在 CentOS 平臺執行,其他版本

linux操作mysql、nginx,vim操作,檔案許可權設定等

inux下操作mysql、nginx,vim操作,檔案許可權設定等 #在Linux系統下,預設所有系統配置檔案都在/etc這個路徑下的 #Linux環境下安裝mysql資料庫 ##1、切換到root許可權下,採用yum命令安裝 同時安裝mariadb的客戶端和服務端

linux安裝mysql修改密碼 [轉]

刪除已有mysql並重新安裝mysql 檢視是否已安裝過mysql rpm -qa |grep -i mysql     2.移除安裝的包 (在之前如果有啟動mysql最好關掉服務) 使用rpm –ev 包名   3.

win10配置Mysql設定遠端連線許可權

安裝版的mysql解除安裝起來太麻煩了,所以選擇使用免安裝版的不失為一個好的選擇,畢竟免安裝版的東西都在一個資料夾下,不要了直接刪了資料夾就好~~ 1.首先是下載了,點入官網連結,一直到最下面,選擇第一個下載,解壓到你想讓它待的地方——就相當於安裝目錄。 2.在解壓得到的資料夾(我

Linux安裝Mysql資料庫且使用者授權(安裝包安裝)

第一步:查詢原有的資料庫 #rpm -qa|grep -i mysql 第二步:刪除查詢出來的資料庫 #rpm -e packageName  --nodeps