MYSQL之庫操作

來源:互聯網
上載者:User

標籤:授權   load   使用者表   不可   var   name   資料資訊   for   character   

一、系統資料庫
  • information_schema :虛擬庫,不佔用磁碟空間,儲存的是資料庫啟動後的一些參數,如使用者表資訊、列資訊、許可權資訊、字元資訊等
  • mysql:核心資料庫,裡麵包含使用者、許可權、關鍵字等資訊。不可以刪除
  • performance_schema:mysql 5.5版本後添加的新庫,主要收集系統績效參數,記錄處理查詢請求時發生的各種事件、鎖等現象 
  • sys : mysql5.7版本新增加的庫,通過這個庫可以快速的瞭解系統的中繼資料資訊,可以方便DBA探索資料庫的很多資訊,解決效能瓶頸都提供了巨大協助
 二、資料庫操作1.建立資料庫
#文法: CREATE DATABASE db_name charset utf8;
說明:‘db_name‘ 是資料庫名字,並且指定當前庫的編碼集為utf8
2.查看資料庫
#查詢目前使用者下所有資料庫show databases;#查看建立資料庫的資訊show create database db_name;#查詢當前操作所在的資料庫名稱select database();
3.選擇資料庫
USE db_name;   #一般在終端上使用
4.刪除資料庫
DROP DATABASE db_name;
三.命名規範
可以由字母、數字、底線、@、#、$區分大小寫唯一性不能使用關鍵字如: CREATE SELECT不能單獨使用數字最長128位
四.使用者權限1.使用者管理
建立使用者    create user ‘使用者名稱‘@‘IP地址‘ identified by ‘密碼‘;刪除使用者    drop user ‘使用者名稱‘@‘IP地址‘;修改使用者    rename user ‘使用者名稱‘@‘IP地址‘; to ‘新使用者名稱‘@‘IP地址‘;
2.授權管理
show grants for ‘使用者‘@‘IP地址‘                  -- 查看許可權grant  許可權 on 資料庫.表 to   ‘使用者‘@‘IP地址‘      -- 授權revoke 許可權 on 資料庫.表 from ‘使用者‘@‘IP地址‘      -- 取消許可權
#建立新使用者create user ‘guo‘@‘127.0.0.1‘ identified ‘123456‘;#授權方式一:為guo授權 db1資料庫下的所有表的 查詢.更新.修改許可權grant select,update,delete on db1.*  to ‘guo‘@‘127.0.0.1‘;#授權方式二:為guo 授權 所有庫的所有許可權(除grant許可權外)grant all privileges on *.*  to ‘guo‘@‘127.0.0.1‘;#重新整理使用者權限flush privileges;
建立使用者及授權例子
原生IP地址可以寫成  localhost
說明
all privileges  除grant外的所有許可權            select          僅查許可權            select,insert   查和插入許可權            ...            usage                   無存取權限            alter                   使用alter table            alter routine           使用alter procedure和drop procedure            create                  使用create table            create routine          使用create procedure            create temporary tables 使用create temporary tables            create user             使用create user、drop user、rename user和revoke  all privileges            create view             使用create view            delete                  使用delete            drop                    使用drop table            execute                 使用call和預存程序            file                    使用select into outfile 和 load data infile            grant option            使用grant 和 revoke            index                   使用index            insert                  使用insert            lock tables             使用lock table            process                 使用show full processlist            select                  使用select            show databases          使用show databases            show view               使用show view            update                  使用update            reload                  使用flush            shutdown                使用mysqladmin shutdown(關閉MySQL)            super                   使用change master、kill、logs、purge、master和set global。還允許mysqladmin調試登陸            replication client      伺服器位置的訪問            replication slave       由複製從屬使用
許可權列表五.修改密碼 方式一: mysqladmin 命令
mysqladmin -u使用者名稱 -p密碼 password 新密碼
方式二: 直接設定使用者密碼
set password for ‘使用者名稱‘@‘IP‘ = password(‘新密碼‘);             flush privileges;
方式三:修改mysql庫下的user表
5.7版本修改密碼方式:update mysql.user set authentication_string=password(‘新密碼‘) where user= ‘使用者名稱‘          flush privileges; -- 重新整理許可權             5.6 版本update mysql.user set password = password(‘新密碼‘) where user= ‘使用者名稱‘flush privileges; -- 重新整理許可權
六.忘記密碼
在忘記root密碼的時候,可以這樣: #1.首先開啟cmd 視窗,關閉mysql服務    net stop mysql  #2.然後跳過許可權檢查,啟動mysql,輸入命令    mysqld --skip-grant-tables #3.重新開啟一個新的cmd視窗,啟動用戶端(已跳過許可權檢查,可以直接登入)    mysql  #4.直接進來,修改密碼update mysql.user set authentication_string=password(‘123456‘) where user=‘root‘; #5. 重新整理許可權flush privileges;
七.中文亂碼問題1.查詢字元編碼
SHOW VARIABLES LIKE ‘char%‘;
2.制服亂碼
#修改方法:#1. 建立my.ini檔案,放在mysql根路徑下#2. 在該檔案中添加以下內容即可:#3.添加此檔案後需要重新啟動服務,以保證此檔案生效------------------------------------------------------------[client]default-character-set=utf8[mysql]#設定mysql用戶端預設字元集default-character-set=utf8[mysqld]#設定3306連接埠port = 3306#允許最大串連數max_connections=200#服務端使用的字元集預設為8位元編碼的latin1字元集character-set-server=utf8#建立新表時將使用的預設儲存引擎default-storage-engine=INNODB#解決mysql在執行sql語句後出現1055錯誤,sql_mode = only_full_group_by不相容sql_mode=‘NO_ENGINE_SUBSTITUTION‘
亂碼已死

注意:如果使用的是mysql5.7版本,則需要建立my.ini檔案,5.7版本以前資料庫內建my,ini檔案,直接改動編碼即可.

 目前最穩定與常用的資料庫版本為(5.6版本與5.5版本)

MYSQL之庫操作

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.