mysql伺服器本地root使用者預設沒有密碼,使用 "mysql -u root -p" 即可登陸。
linux本地使用者可以以任意使用者名稱登陸mysql,但是沒有任何許可權,沒有意義。
mariadb中使用使用者名稱時如果不加上host,預設為 '%' ,這樣本地操作時會造成使用者的建立,所以最好對使用者操作時加上 @'localhost'。
所有的資料庫名,表名,是區分大小寫的,表中的欄位名稱不區分大小寫。
grant resource,connect to username; //oracle中可以吧。
不能使用 grant dba to username;
grant all privileges on testdb.* to test@localhost identified by '1234'; //自動建立使用者
show grants [ for wizard [ @'localhost' ]]; //預設當前使用者
select current_user(); //顯示當前登陸使用者名稱。
select user();
select database(); //顯示當前資料庫。
show create table [tablename]; //顯示建立表時的欄位名和屬性
root許可權下建立的使用者預設host為「%」,這樣在本地登陸時會優先使用本地使用者,建立的使用者不能在本地登陸,因為mysql.user表host項有localhost而user為空。解決辦法是將建立的使用者的host改為localhost,這樣就可以在本地登陸了,當然這樣就不能使用他進行遠端登陸了。
mysql中新增使用者,新建資料庫,使用者授權,刪除使用者,修改密碼(注意每行後邊都跟個;表示乙個命令語句結束):
1.新建使用者
登入mysql:
$>mysql -u root -p
$>密碼
建立使用者:
mysql> insert into mysql.user(host,user,password) values("localhost","test",password("1234"));
這樣就建立了乙個名為:test 密碼為:1234 的使用者。
注意:此處的"localhost",是指該使用者只能在本地登入,不能在另外一台機器上遠端登入。如果想遠端登入的話,將"localhost"改為"%",表示在任何一台電腦上都可以登入。也可以指定某台機器可以遠端登入。
然後登入一下:
mysql>exit;
$>mysql -u test -p
$>輸入密碼
mysql>登入成功
2.為使用者授權
授權格式:grant 許可權 on 資料庫.* to 使用者名稱@登入主機 identified by "密碼";
登入mysql(有root許可權),這裡以root身份登入:
$>mysql -u root -p
$>密碼
首先為使用者建立乙個資料庫(testdb):
mysql>create database testdb;
授權test使用者擁有testdb資料庫的所有許可權(某個資料庫的所有許可權):
mysql>grant all privileges on testdb.* to test$localhost identified by '1234';
mysql>flush privileges; //重新整理系統許可權表
格式:grant 許可權 on 資料庫.* to 使用者名稱$登入主機 identified by "密碼";
指定部分許可權給一使用者,可以這樣來寫:
mysql>grant select,update on testdb.* to test$localhost identified by '1234';
mysql>flush privileges; //重新整理系統許可權表
授權test使用者擁有所有資料庫的某些許可權:
mysql>grant select,delete,update,create,drop on *.* to test$"%" identified by "1234";
//test使用者對所有資料庫都有select,delete,update,create,drop 許可權。
//$"%" 表示對所有非本地主機授權,不包括localhost。(localhost位址設為127.0.0.1,如果設為真實的本地位址,不知道是否可以,沒有驗證。)
//對localhost授權:加上一句grant all privileges on testdb.* to test$localhost identified by '1234';即可。
3.刪除使用者
mysql>delete from user where user='test' and host='localhost';
mysql>flush privileges;
mysql>drop database testdb; //刪除使用者的資料庫
刪除賬戶及許可權:
>drop user 使用者名稱@'%';
>drop user 使用者名稱@'localhost';
4.修改指定使用者密碼
mysql>update mysql.user set password=password('新密碼') where user="test" and host="localhost";
mysql>flush privileges;
5.列出所有資料庫
mysql>show database;
6.切換資料庫
mysql>use '資料庫名';
7.列出所有表
mysql>show tables;
8.顯示資料表結構
mysql>describe 表名;
9.刪除資料庫和資料表
mysql>drop database 資料庫名;
mysql>drop table 資料表名;
mysql使用基礎 mysql 的基礎使用
1 登入 mysql uroot p123 2 檢視使用者 select user 3 退出 quit exit q 4 檢視幫助資訊 help create user 5 建立帳號 create user egon 192.168.32.identified by 123 create user ...
MySql基礎使用
嚴格的 mysql是一種伺服器,資料庫是建立在遠端伺服器上的資料管理服務端。mysql是一種關係型的資料庫。資料庫分類 可分為關係型和非關係型資料庫。關係型 將複雜的資料結構歸為簡單的二元關係 二維 形式 這種型別的資料庫有 oracle mysql sqlserver sybase informi...
mysql 使用基礎 1
使用命令列連線 mysql mysql uroot p passowrd hlocalhost p port code mysql show databases 顯示資料庫 mysql use test 使用 test 資料庫 mysql show tables 顯示表資訊 mysql descri...