mysql-5.5.50-winx64
1 獲取幫助文檔
cd?C:\Program?Files\mysql\mysql-5.5.50-winx64 C:\Program?Files\mysql\mysql-5.5.50-winx64>?bin\mysqld.exe?--verbose?--help?>?mysqld_note.txt2 在 Windows 平臺以服務運行
2.1 啟動服務器
需要安裝,寫個安裝腳本“bin\mysqld.exe --install”,執行即可。在服務管理運行數據庫,默認服務名稱“MySQL”。需要指定服務名稱時,要在安裝時設定“bin\mysqld.exe --install mysql5.5”。
安裝時,如果使用“--install”表示主機啟動時自動啟動服務,使用“--install-manual”表示不啟動。
啟動數據庫②
C:\>?net?start?mysql啟動數據庫②
C:\>?sc?query?mysql C:\>?sc?start?mysql 查看監聽
連接服務器,root 用戶默認無密碼。安裝后需要修改默認密碼。測試成功后,按需要設定環境變量。初始登陸時,沒有連接任何數據庫。
2.2 啟動多個端口
設置兩個配置文件,建立兩個數據目錄;
[mysqld] port????????=?3307 bind_address?=?192.168.130.1 character_set_server??=?gbk datadir?=?C:/data/data2[mysqld] port????????=?3308 bind_address?=?192.168.130.1 character_set_server??=?gbk datadir?=?C:/data/data3啟動服務:
C:\WINDOWS\system32>mysqld?--defaults-file=C:/data/my2.ini 160629?10:09:05?[Note]?mysqld?(mysqld?5.5.50)?starting?as?process?14408?...C:\WINDOWS\system32>mysqld?--defaults-file=C:/data/my3.ini 160629?10:09:30?[Note]?mysqld?(mysqld?5.5.50)?starting?as?process?14508?...C:\WINDOWS\system32>netstat?-na?-p?tcp?-o?|?findstr?"192.168.130.1"TCP????192.168.130.1:3307?????0.0.0.0:0??????????????LISTENING???????14408TCP????192.168.130.1:3308?????0.0.0.0:0??????????????LISTENING???????145082.3 服務方式啟動多個端口
必要時,刪除之前添加的服務。重新安裝服務:
mysqld?--install?mysql2?--defaults-file=C:/data/my2.ini mysqld?--install?mysql3?--defaults-file=C:/data/my3.ini net?start?mysql2 net?start?mysql3 此時,mysql 連接時需要使用選項“-P”指定連接的服務使用的端口號。
2.4 命名管道、共享內存
使用命名管道連接數據庫,修改配置文件:
skip-networking enable-named-pipe重啟服務,使用命令連接數據庫:
mysql?--protocol=pipe?-uroot如果,需改了系統默認用戶,查驗后適當添加用戶“create user 'root'@'localhost';”。
使用共享內存連接數據庫,修改配置文件:
skip-networking shared-memory=on重啟服務,使用命令連接數據庫:
mysql?--protocol=memory?-uroot指定連接名稱配置文件、連接命令(默認連接“MYSQL”):
skip-networking shared-memory=on shared_memory_base_name?=?MYSQL1C:\>?mysql?-umldn?-p?--protocol=memory?-Dmldn?--shared-memory-base-name=MYSQL1 C:\>?mysql?--protocol=memory?--shared_memory_base_name=MYSQL1?-uroot mysql>?show?variables?like?'%memory%';* 如果是沒有明確使用哪個,默認是命名管道方式;兩者在監聽時共享內存可以通過命令“mysql -uroot”連接:
skip-networking #shared-memory=on #enable-named-pipe3 配置信息
在沒有“任何配置”的情況下,服務依然可以啟動,需要有效控制服務啟動時設定配置文件。在安裝目錄下依據參考配置文件,修改(復制)為“my.ini”。
查看運行時配置信息。(幫助文檔最后一行獲悉)(設定下環境變量)
3.1 查詢
配置查詢
?C:\?mysqladmin?variables查看字符集
?C:\?mysqladmin?variables?|?findstr?"character"查看數據路徑
?C:\?mysqladmin?variables?|?findstr?"datadir"查看存儲引擎
?C:\?mysqladmin?variables?|?findstr?"default_storage_engine" 查看“hostname”
查看“innodb”信息
查看日志信息
查看“port”信息
性能查詢
3.2 設置
字符集改為“gbk”,修改配置文件“[mysqld]”。
可以修改的字符集,可以通過命令查詢得知,也可以從配置文件(“share\charsets\index.xml”)里看到。
mysql>?show?character?set; 監聽端口改為“33306”,監聽地址“192.168.130.1”:
設定“bind_address”選項后,監聽地址被限定在某一個接口地址上,不設定該選項,所有機器上地址都監聽。默認監聽顯示“0.0.0.0”,表示監聽了“所有 ipv4 地址”;如果是“::”,表示監聽了“所有 ipv4 和 ipv6 地址”。
數據庫目錄;復制默認的目錄內容到新設定的數據目錄中。
datadir?=?D:/data/4 增加用戶
默認情況,mysql 只接受本地登錄的用戶;并且登陸無需密碼,連用戶名不輸入都可以。
4.1 root用戶
默認情況下,root在本地登錄時不需要密碼;甚至不需要用戶名也可以登陸。可是要是修改了監聽 IP 地址時,所有用戶就統統無法登陸了。需要在修改監聽之前設定好,這里僅僅設定了查詢 mysql 庫的權限。
mysql>?create?user?'root'@'192.168.130.1'; mysql>?update?user?set?Select_priv='Y'?where?user='root'?and?host='192.168.130.1'; mysql>?update?user?set?password=password('xxxxxx')?where?host='192.168.130.1'; mysql>?select?host,user,password?from?user?; +---------------+------+-------------------------------------------+ |?host??????????|?user?|?password??????????????????????????????????| +---------------+------+-------------------------------------------+ |?localhost?????|?root?|???????????????????????????????????????????| |?127.0.0.1?????|?root?|???????????????????????????????????????????| |?::1???????????|?root?|???????????????????????????????????????????| |?localhost?????|??????|???????????????????????????????????????????| |?192.168.130.1?|?root?|?*BDAB0082659254CA8B96B38EC29F67DB05A48D3C?| +---------------+------+-------------------------------------------+ 5?rows?in?set?(0.00?sec)使用“set password for 'user'@'host'=password('new-password');”也可以修改密碼;或者“grant all privileges on database.table to 'user'@'host' identified by 'new-password;'”。
增加更多權限。
mysql>?grant?all?on?mysql.*?to?'root'@'192.168.130.1';配置生效:
mysql>?flush?privileges;4.2 其他用戶
針對數據庫“test”增加一個高級用戶。
mysql>?create?user?'sunny'@'192.168.130.1'; mysql>?update?user?set?password=password('xxxxxx')?where?user='sunny'; mysql>?grant?all?on?test.*?to?'sunny'@'192.168.130.1'; mysql>?flush?privileges;登陸后,執行下邊命令,查看當前用戶、當前連接數據庫:
mysql>?select?user(); mysql>?select?database();4.3 test庫的問題
當設定的用戶是“test”庫時,如果輸入錯誤的密碼當然無法登陸。但是在不輸入密碼(設置過密碼)的情況下,卻也可以登陸。這是應為用戶登錄數據庫,受到多個表的管制,打開表“mysql.db”時,啥都明白了。
mysql>?select?host,db,user?from?db; +---------------+---------+-------+ |?host??????????|?db??????|?user??| +---------------+---------+-------+ |?%?????????????|?test????|???????| |?%?????????????|?test\_%?|???????| |?192.168.130.1?|?test????|?sunny?| +---------------+---------+-------+ 3?rows?in?set?(0.00?sec) 這個表內容,是什么意思。“登陸任意主機”、“test庫”“test_開頭的庫”,不需要用戶名即可登錄。當然在輸入用戶名“sunny”沒有輸入密碼時可以登錄。
4.4 默認‘root’權限
查看原有用戶權限“show grants”,給新用戶賦予相應權限:
mysql>?GRANT?SELECT,?INSERT,?UPDATE,?DELETE,?CREATE,?DROP,?RELOAD,?SHUTDOWN,?PROCESS,?FILE,?REFERENCES,?INDEX,?ALTER,?SUPER,?CREATE?TEMPORARY?TABLES,?LOCK?TABLES,?EXECUTE,?REPLICATION?SLAVE,?REPLICATION?CLIENT,?CREATE?VIEW,?SHOW?VIEW,?CREATE?ROUTINE,?ALTER?ROUTINE,?CREATE?USER,?EVENT,?TRIGGER,?CREATE?TABLESPACE?ON?*.*?TO?'root'@'localhost'?WITH?GRANT?OPTION; mysql>?GRANT?PROXY?ON?''@''?TO?'root'@'localhost'?WITH?GRANT?OPTION;5 mysqladmin
語法:mysqladmin 選項 子命令;子命令:create、drop、extended-status、flush-privileges、flush-status、ping、kill、processlist、shutdown、status、(global )variables。選項:-i、-c。
C:\>?mysqladmin?-uroot?-p?-h192.168.130.1?extend-status C:\>?mysqladmin?-uroot?-p?-h192.168.130.1?shutdown C:\>?mysqladmin?-uroot?-p?-h192.168.130.1?ping查詢
查看當前庫、庫包含的表:
查看當前用戶、用戶權限:
查看表屬性(可以使用“%”作為通配符匹配)、創建語句:
查看變量(默認顯示會話變量,“session”、“global”):
轉載于:https://blog.51cto.com/sunnybay/1791984
總結
以上是生活随笔為你收集整理的mysql-5.5.50-winx64的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Spring Data 系列(二) S
- 下一篇: [Leetcode][第116 117题