目錄建庫
使用者 授權
其它mysqldump 問題
create database name; 建立資料庫
drop database name; 直接刪除資料庫,不提醒
mysqladmin drop databasename; 刪除資料庫前,有提示。
mysql>show databases; 顯示所有資料庫
新建使用者
格式:create user "username"@"host" identified by "password";
1.mysql->create user 'test'@'localhost' identified by '123';
2.mysql->create user 'test'@'192.168.7.22' identified by '123';
3.mysql->create user 'test'@'%' identified by '123';
說明:host="localhost"為本地登入使用者,host="ip"為ip位址登入,host="%"所有使用者
刪除使用者
drop user 'username'@'host';
檢視現有使用者:
mysql> select host,user,authentication_string from mysql.user;
修改密碼:
shell>mysql -u root -p
mysql> update user set password=password(123456) where user=』root』;
mysql> flush privileges //重新整理資料庫
格式:grant privileges on databasename.tablename to 'username'@'host' identified by 'password' with grant option;
(1)grant命令說明:
priveleges(許可權列表),可以是all priveleges, 表示所有許可權,也可以是select, insert, update, delete, create,drop等許可權,多個許可權的名詞,相互之間用逗號分開。
on用來指定許可權針對哪些庫和表。
*.* 中前面的*號用來指定資料庫名,後面的*號用來指定表名。
to 'username'@'host' :@後面接限制的主機,可以是ip、ip段、網域名稱以及%,%表示任何地方。注意:這裡%有的版本不包括本地,這個和版本有關係,遇到這個問題再加乙個localhost的使用者就可以了。
identified by指定使用者的登入密碼,該項可以省略。
with grant option 這個選項表示該使用者可以將自己擁有的許可權授權給別人。
(2)刪除授權:
mysql> revoke all privileges on *.* from root@」%」;
mysql> delete from user where user=」root」 and host=」%」;
mysql> flush privileges;
2.授權原則說明:
a、只授予能滿足需要的最小許可權,防止使用者幹壞事。比如使用者只是需要查詢,那就只給select許可權就可以了,不要給使用者賦予update、insert或者delete許可權。
b、建立使用者的時候限制使用者的登入主機,一般是限制成指定ip或者內網ip段。
c、初始化資料庫的時候刪除沒有密碼的使用者。安裝完資料庫的時候會自動建立一些使用者,這些使用者預設沒有密碼。
d、為每個使用者設定滿足密碼複雜度的密碼。
e、定期清理不需要的使用者。**許可權或者刪除使用者。
shell>mysql -u root -p
mysql>use databasename; 選擇資料庫
mysql>describe tablename; 表的詳細描述
mysql>select version(),current_date; 顯示當前mysql版本和當前日期
mysql>show databases; 顯示所有資料庫
mysql>show tables; 顯示資料庫mysql中所有的表:先use mysql;然後
mysql>alter table t1 rename t2; 重新命名表
備份資料庫
shell> mysqldump -h host -u root -p dbname > dbname_backup.sql
恢復資料庫
shell> mysqladmin -h myhost -u root -p create dbname
shell> mysqldump -h host -u root -p dbname < dbname_backup.sql
如果只想卸出建表指令,則命令如下:
shell> mysqladmin -u root -p -d databasename > a.sql
如果只想卸出插入資料的sql命令,而不需要建表命令,則命令如下:
shell> mysqladmin -u root -p -t databasename > a.sql
那麼如果我只想要資料,而不想要什麼sql命令時,應該如何操作呢?
mysqldump -t./ phptest driver
其中,只有指定了-t引數才可以卸出純文字檔案,表示卸出資料的目錄,./表示當前目錄,即與mysqldump同一目錄。如果不指定driver 表,則將卸出整個資料庫的資料。每個表會生成兩個檔案,乙個為.sql檔案,包含建表執行。另乙個為.txt檔案,只包含資料,且沒有sql指令。
(1) unable to load authentication plugin 'caching_sha2_password'
處理:alter user 'mytest'@'%' identified with mysql_native_password by 'mytest';
mysql基本常用命令 MySQL常用命令(一)
cmd提示框中的mysql基礎命令 一 命令 連線mysql伺服器 mysql h localhost u root p 展示所有資料庫 show databases 選擇資料庫 use database 展示所選資料下所有表 show tables 設定資料庫編碼 set names gbk 用s...
mysql巡檢常用命令 mysql 常用命令
客戶端連線 進入命令列,windows cmd,連線 mysql u 使用者名稱 p密碼 h 伺服器ip位址 p 伺服器端mysql埠號 d 資料庫名 注意 1 伺服器端口標誌 p一定要大些以區別於使用者 p,如果直接連線資料庫標誌 d也要大寫 2 如果要直接輸入密碼 p後面不能留有空格如 pmyp...
mysql常用命令總結 mySql常用命令總結
總結一下自己常用的mysql資料庫的常用命令 mysql u root p 進入mysql bin目錄後執行,回車後輸入密碼連線。資料庫操作 1 create database dbname 建立資料庫,資料庫名為dbname 2 create database todo default chara...