您好,登錄后才能下訂單哦!
首先,我們需要通過以下命令來檢查MySQL服務器是否啟動:
ps -ef | grep mysqld
如果MySql已經啟動,以上命令將輸出mysql進程列表, 如果mysql未啟動,你可以使用以下命令來啟動mysql服務器:
root@host# cd /usr/bin./mysqld_safe &
如果你想關閉目前運行的 MySQL 服務器, 你可以執行以下命令:
root@host# cd /usr/bin./mysqladmin -u root -p shutdownEnter password: ******
如果你需要添加 MySQL 用戶,你只需要在 mysql 數據庫中的 user 表添加新用戶即可。
以下為添加用戶的的實例,用戶名為guest,密碼為guest123,并授權用戶可進行 SELECT, INSERT 和 UPDATE操作權限:
root@host# mysql -u root -pEnter password:*******mysql> use mysql;Database changed mysql> INSERT INTO user (host, user, password, select_priv, insert_priv, update_priv) VALUES ('localhost', 'guest', PASSWORD('guest123'), 'Y', 'Y', 'Y');Query OK, 1 row affected (0.20 sec)mysql> FLUSH PRIVILEGES;Query OK, 1 row affected (0.01 sec)mysql> SELECT host, user, password FROM user WHERE user = 'guest';+-----------+---------+------------------+| host | user | password |+-----------+---------+------------------+| localhost | guest | 6f8c114b58f2ce9e |+-----------+---------+------------------+1 row in set (0.00 sec)
在添加用戶時,請注意使用MySQL提供的 PASSWORD() 函數來對密碼進行加密。 你可以在以上實例看到用戶密碼加密后為: 6f8c114b58f2ce9e.
注意:在 MySQL5.7 中 user 表的 password 已換成了authentication_string。
注意:在注意需要執行 FLUSH PRIVILEGES 語句。 這個命令執行后會重新載入授權表。
如果你不使用該命令,你就無法使用新創建的用戶來連接mysql服務器,除非你重啟mysql服務器。
你可以在創建用戶時,為用戶指定權限,在對應的權限列中,在插入語句中設置為 'Y' 即可,用戶權限列表如下:
Select_priv
Insert_priv
Update_priv
Delete_priv
Create_priv
Drop_priv
Reload_priv
Shutdown_priv
Process_priv
File_priv
Grant_priv
References_priv
Index_priv
Alter_priv
另外一種添加用戶的方法為通過SQL的 GRANT 命令,你下命令會給指定數據庫TUTORIALS添加用戶 zara ,密碼為 zara123 。
root@host# mysql -u root -p password;Enter password:*******mysql> use mysql;Database changed mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP -> ON TUTORIALS.* -> TO 'zara'@'localhost' -> IDENTIFIED BY 'zara123';
以上命令會在mysql數據庫中的user表創建一條用戶信息記錄。
注意: MySQL 的SQL語句以分號 (;) 作為結束標識。
一般情況下,你不需要修改該配置文件,該文件默認配置如下:
[mysqld]datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock[mysql.server]user=mysql basedir=/var/lib[safe_mysqld]err-log=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid
在配置文件中,你可以指定不同的錯誤日志文件存放的目錄,一般你不需要改動這些配置。
以下列出了使用Mysql數據庫過程中常用的命令:
USE 數據庫名 :
選擇要操作的Mysql數據庫,使用該命令后所有Mysql命令都只針對該數據庫。
mysql> use RUNOOB;Database changed
SHOW DATABASES:
列出 MySQL 數據庫管理系統的數據庫列表。
mysql> SHOW DATABASES;+--------------------+| Database |+--------------------+| information_schema || RUNOOB || cdcol || mysql || onethink || performance_schema || phpmyadmin || test || wecenter || wordpress |+--------------------+10 rows in set (0.02 sec)
SHOW TABLES:
顯示指定數據庫的所有表,使用該命令前需要使用 use 命令來選擇要操作的數據庫。
mysql> use RUNOOB;Database changed mysql> SHOW TABLES;+------------------+| Tables_in_runoob |+------------------+| employee_tbl || runoob_tbl || tcount_tbl |+------------------+3 rows in set (0.00 sec)
SHOW COLUMNS FROM 數據表:
顯示數據表的屬性,屬性類型,主鍵信息 ,是否為 NULL,默認值等其他信息。
mysql> SHOW COLUMNS FROM runoob_tbl;+-----------------+--------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+-----------------+--------------+------+-----+---------+-------+| runoob_id | int(11) | NO | PRI | NULL | || runoob_title | varchar(255) | YES | | NULL | || runoob_author | varchar(255) | YES | | NULL | || submission_date | date | YES | | NULL | |+-----------------+--------------+------+-----+---------+-------+4 rows in set (0.01 sec)
SHOW INDEX FROM 數據表:
顯示數據表的詳細索引信息,包括PRIMARY KEY(主鍵)。
mysql> SHOW INDEX FROM runoob_tbl;+------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |+------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+| runoob_tbl | 0 | PRIMARY | 1 | runoob_id | A | 2 | NULL | NULL | | BTREE | | |+------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+1 row in set (0.00 sec)
SHOW TABLE STATUS LIKE [FROM db_name] [LIKE 'pattern'] \G:
該命令將輸出Mysql數據庫管理系統的性能及統計信息。
mysql> SHOW TABLE STATUS FROM RUNOOB; # 顯示數據庫 RUNOOB 中所有表的信息mysql> SHOW TABLE STATUS from RUNOOB LIKE 'runoob%'; # 表名以runoob開頭的表的信息mysql> SHOW TABLE STATUS from RUNOOB LIKE 'runoob%'\G; # 加上 \G,查詢結果按列打印
Gif 圖演示:
MySQL 安裝
MySQL PHP 語法
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。
oocarain
ooc***in@163.com
記錄 MySQL 學習過程遇到的問題。
系統:win32 位
MySQL 版本:5.7.17-log
MySQL 語法對大小寫不敏感,但是大寫更容易看出。
一、啟動關閉MySQL服務
1【開始菜單】搜索 services.msc 打開 windows【服務管理器】,可以在此開啟關閉 MySQL 服務。
2 在 cmd 中使用命令:
遇到net命令無法識別,如下:
這是環境變量沒有配置的原因,究竟是哪一個文件的環境變量沒有配置呢?
是 C:\windows\system32\ 這個路徑下的 net.exe 沒有配置環境變量
現切換到這個路徑下試一下可不可以使用 net 命令:
在 Powershell 需要使用
.\net stop mysql
關閉服務。
在 cmd 中可以直接使用
啟動服務。
將c:\windows\system32添加到系統的Path中后:
成功!!!
oocarain
oocarain
ooc***in@163.com
9個月前 (03-06)一條魚
ili***yun@163.com
參考地址
用 insert 添加用戶時,可能會報錯:
my-default.ini中有一條語句:
指定了嚴格模式,為了安全,嚴格模式禁止通過 insert 這種形式直接修改 mysql 庫中的 user 表進行添加新用戶
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
將 STRICT_TRANS_TABLES 刪掉之后即可使用 insert 添加
一條魚
一條魚
ili***yun@163.com
參考地址
5個月前 (06-25)Morrison
982***639@qq.com
參考地址
添加新用戶建議 GRANT 命令
一、grant 普通數據用戶,查詢、插入、更新、刪除 數據庫中所有表數據的權利。
或者,用一條 MySQL 命令來替代:
二、grant 數據庫開發人員,創建表、索引、視圖、存儲過程、函數。。。等權限。
grant 創建、修改、刪除 MySQL 數據表結構權限。
grant 操作 MySQL 外鍵權限。
grant 操作 MySQL 臨時表權限。
grant 操作 MySQL 索引權限。
grant 操作 MySQL 視圖、查看視圖源代碼 權限。
grant 操作 MySQL 存儲過程、函數 權限。
三、grant 普通 DBA 管理某個 MySQL 數據庫的權限。
其中,關鍵字 privileges 可以省略。
四、grant 高級 DBA 管理 MySQL 中所有數據庫的權限。
五、MySQL grant 權限,分別可以作用在多個層次上。
1. grant 作用在整個 MySQL 服務器上:
2. grant 作用在單個數據庫上:
3. grant 作用在單個數據表上:
這里在給一個用戶授權多張表時,可以多次執行以上語句。例如:
4. grant 作用在表中的列上:
5. grant 作用在存儲過程、函數上:
六、查看 MySQL 用戶權限
查看當前用戶(自己)權限:
查看其他 MySQL 用戶權限:
七、撤銷已經賦予給 MySQL 用戶權限的權限。
revoke 跟 grant 的語法差不多,只需要把關鍵字 to 換成 from 即可:
八、MySQL grant、revoke 用戶權限注意事項
1. grant, revoke 用戶權限后,該用戶只有重新連接 MySQL 數據庫,權限才能生效。
2. 如果想讓授權的用戶,也可以將這些權限 grant 給其他用戶,需要選項 grant option
這個特性一般用不到。實際中,數據庫權限最好由 DBA 來統一管理。
注意:創建完成后需要執行 FLUSH PRIVILEGES 語句。