MySQL創建數據庫及用戶


創建數據庫

  1. 官網文檔創建數據庫語法
CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name
    [create_specification] ...

create_specification:
    [DEFAULT] CHARACTER SET [=] charset_name
  | [DEFAULT] COLLATE [=] collation_name

其中COLLATECHARSET的對應關系http://dev.mysql.com/doc/refman/5.7/en/charset-charsets.html

  1. 示例
CREATE DATABASE IF NOT EXISTS testdb DEFAULT CHARSET utf8;
  1. 查詢創建庫的語句
    SHOW CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name

  2. 刪除數據庫

-- 刪除數據庫
drop database testDB;

創建用戶並授權

  1. 官網文檔創建用戶語法
    http://dev.mysql.com/doc/refman/5.7/en/create-user.html

  2. 示例

-- 用戶密碼30天過期
CREATE USER IF NOT EXISTS 'test' IDENTIFIED BY 'test' PASSWORD EXPIRE INTERVAL 30 DAY
-- 用戶密碼永不過期
CREATE USER IF NOT EXISTS 'test' IDENTIFIED BY 'test' PASSWORD EXPIRE NEVER
  1. 授權
    MySQL支持的權限列表(http://dev.mysql.com/doc/refman/5.7/en/grant.html#grant-privileges)
-- 授權testdb庫的所有權限給用戶test
GRANT ALL ON testdb.* TO 'test'@'localhost';
-- 只把testdb庫的select、insert、update授權給用戶test
GRANT SELECT, INSERT,UPDATE ON testdb.* TO 'test';

還可以只授權某個表,甚至某個列給用戶,具體查官網文檔http://dev.mysql.com/doc/refman/5.7/en/grant.html

  1. 授權完畢后,刷新權限表
-- 刷新系統權限表
flush privileges;
  1. 撤銷授權:使用REVOKE命令
    REVOKE INSERT ON testdb.* FROM test;

  2. 修改用戶

-- 鎖定test用戶,不讓其登錄
ALTER USER IF EXISTS test ACCOUNT LOCK;
-- 解鎖test用戶
ALTER USER IF EXISTS test ACCOUNT UNLOCK;
-- 設定test用戶的密碼180天過期
ALTER USER test PASSWORD EXPIRE INTERVAL 180 DAY;
  1. 重命名用戶
RENAME USER test TO new_test;
  1. 刪除用戶
DROP USER IF EXISTS test;
  1. 修改密碼
SET PASSWORD FOR test = test_pwd;

也可以使用如下方式

#cmd,運行DOS,cd到mysql的bin文件夾,然后執行如下
D:\Mysql\bin>mysqladmin -u root -p password newPwd
#Enter password:(在此輸入原密碼)
#newPwd指的是新密碼
然后打開mysql 直接輸入新密碼即可
  1. 查詢當前用戶
    SELECT CURRENT_USER();

查詢相關

-- 查詢所有數據庫
show databases;

-- 查詢所有表
show tables;
-- 查詢表中所有的列
show columns from 表名;
-- 或
describe 表名;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM