進(jìn)入Mysql數(shù)據(jù)庫(kù)命令行方式有兩種方式:
創(chuàng)新互聯(lián)為企業(yè)提供:品牌網(wǎng)站制作、網(wǎng)絡(luò)營(yíng)銷(xiāo)策劃、成都微信小程序、營(yíng)銷(xiāo)型網(wǎng)站建設(shè)和網(wǎng)站運(yùn)營(yíng)托管,一站式網(wǎng)絡(luò)營(yíng)銷(xiāo)整體服務(wù)。實(shí)現(xiàn)不斷獲取潛在客戶之核心目標(biāo),建立了企業(yè)專屬的“全網(wǎng)營(yíng)銷(xiāo)推廣”,就用不著再為了獲取潛在客戶而苦惱,相反,客戶會(huì)主動(dòng)找您,生意就找上門(mén)來(lái)了!
方式一:在Mysql開(kāi)始菜單里包含Mysql命令行客戶端,只要點(diǎn)擊輸入root的密碼即可進(jìn)入。
方式二:在DOS模式下(CMD模式)定位到Mysql安裝目錄下在子目錄bin,調(diào)用mysql.exe進(jìn)入,即
========================以下是命令===================================
C:\Program
Files\MySQL\MySQL
Server
5.1\binmysql
-u
root
Enter
password:
******
========================以上是命令===================================
7
使用mysqladmin.exe命令來(lái)修改Mysql的root密碼
一般Mysql的root默認(rèn)密碼為空,如果你之前并沒(méi)有設(shè)置過(guò)root密碼就使用mysqladmin命令,你可以使用如下mysqladmin命令來(lái)修改root密碼
========================以下是命令===================================
C:\Program
Files\MySQL\MySQL
Server
5.1\binmysqladmin
-u
root
-p
password
123456
Enter
password
C:\Program
Files\MySQL\MySQL
Server
5.1\binmysql
-u
root
-p123456
========================以上是命令===================================
8
如上所述使用mysqladmin第一次修改root的默認(rèn)密碼時(shí),Enter
password回車(chē)即可,然后使用mysql.exe命令輸入root及其密碼即可進(jìn)入Mysql命令行。
如果已設(shè)置了Mysql的root密碼,現(xiàn)在需要修改并進(jìn)入Mysql命令行模式,則輸入
========================以下是命令===================================
C:\Program
Files\MySQL\MySQL
Server
5.1\binmysqladmin
-u
root
-p123456
password
root
C:\Program
Files\MySQL\MySQL
Server
5.1\binmysql
-u
root
-proot
========================以上是命令===================================
即可。
9
這里使用了到了Mysql自帶的兩種命令mysqladmin.exe和mysql.exe,mysqladmin修改密碼的命令格式如下
mysqladmin
-u
root
-p[oldpass]
password
newpass
注意oldpass(老密碼)可選,如果root默認(rèn)密碼為空,則不需要輸入,如果需要更改老密碼,請(qǐng)注意老密碼與-p之間不要有空格,否則會(huì)報(bào)錯(cuò),另外password和newpass(新密碼)之間以空格分隔。
mysql命令與mysqladmin命令格式大同小異,主要用來(lái)輸入正確的用戶名和密碼后進(jìn)入Mysql命令行模式,格式如下
mysql
-u
root
-p[password]
如果不輸入password,回車(chē)后會(huì)出現(xiàn)Enter
password的提示。如果root密碼為空,也不需要輸入password,出現(xiàn)Enter
password提示后回車(chē)即可。
工具/材料:電腦、mysql
1、首先打開(kāi)mysql,輸入命令describe數(shù)據(jù)表名稱,查看當(dāng)前的數(shù)據(jù)表結(jié)構(gòu)信息。
2、如果想要添加新的字段信息,那么通過(guò)命令alter...add...進(jìn)行添加。
3、添加新的字段信息完成之后,再查看數(shù)據(jù)表的結(jié)構(gòu),可以看到已經(jīng)新增了字段類(lèi)型為date的字段。
4、如果想要修改已經(jīng)有的字段信息,那么通過(guò)命令alter...change...,進(jìn)行修改。
5、修改完成之后,再次查看數(shù)據(jù)表的結(jié)構(gòu),可以看到score的默認(rèn)值已經(jīng)修改為0。
6、通過(guò)命令insertinto,插入信息來(lái)查看是否能夠正確輸入信息。
7、通過(guò)命令select查看數(shù)據(jù)表的內(nèi)容,可以發(fā)現(xiàn)數(shù)據(jù)正確輸入到數(shù)據(jù)表。
第一招、mysql服務(wù)的啟動(dòng)和停止
net stop mysql
net start mysql
第二招、登陸mysql
語(yǔ)法如下: mysql -u用戶名 -p用戶密碼
鍵入命令mysql -uroot -p, 回車(chē)后提示你輸入密碼,輸入12345,然后回車(chē)即可進(jìn)入到mysql中了,mysql的提示符是:
mysql
注意,如果是連接到另外的機(jī)器上,則需要加入一個(gè)參數(shù)-h機(jī)器IP
第三招、增加新用戶
格式:grant 權(quán)限 on 數(shù)據(jù)庫(kù).* to 用戶名@登錄主機(jī) identified by "密碼"
如,增加一個(gè)用戶user1密碼為password1,讓其可以在本機(jī)上登錄, 并對(duì)所有數(shù)據(jù)庫(kù)有查詢、插入、修改、刪除的權(quán)限。首先用以root用戶連入mysql,然后鍵入以下命令:
grant select,insert,update,delete on *.* to user1@localhost Identified by "password1";
如果希望該用戶能夠在任何機(jī)器上登陸mysql,則將localhost改為"%"。
如果你不想user1有密碼,可以再打一個(gè)命令將密碼去掉。
grant select,insert,update,delete on mydb.* to user1@localhost identified by "";
第四招: 操作數(shù)據(jù)庫(kù)
登錄到mysql中,然后在mysql的提示符下運(yùn)行下列命令,每個(gè)命令以分號(hào)結(jié)束。
1、 顯示數(shù)據(jù)庫(kù)列表。
show databases;
缺省有兩個(gè)數(shù)據(jù)庫(kù):mysql和test。 mysql庫(kù)存放著mysql的系統(tǒng)和用戶權(quán)限信息,我們改密碼和新增用戶,實(shí)際上就是對(duì)這個(gè)庫(kù)進(jìn)行操作。
2、 顯示庫(kù)中的數(shù)據(jù)表:
use mysql;
show tables;
3、 顯示數(shù)據(jù)表的結(jié)構(gòu):
describe 表名;
4、 建庫(kù)與刪庫(kù):
create database 庫(kù)名;
drop database 庫(kù)名;
5、 建表:
use 庫(kù)名;
create table 表名(字段列表);
drop table 表名;
6、 清空表中記錄:
delete from 表名;
7、 顯示表中的記錄:
select * from 表名;
第五招、導(dǎo)出和導(dǎo)入數(shù)據(jù)
1. 導(dǎo)出數(shù)據(jù):
mysqldump --opt test mysql.test
即將數(shù)據(jù)庫(kù)test數(shù)據(jù)庫(kù)導(dǎo)出到mysql.test文件,后者是一個(gè)文本文件
如:mysqldump -u root -p123456 --databases dbname mysql.dbname
就是把數(shù)據(jù)庫(kù)dbname導(dǎo)出到文件mysql.dbname中。
2. 導(dǎo)入數(shù)據(jù):
mysqlimport -u root -p123456 mysql.dbname。
不用解釋了吧。
3. 將文本數(shù)據(jù)導(dǎo)入數(shù)據(jù)庫(kù):
文本數(shù)據(jù)的字段數(shù)據(jù)之間用tab鍵隔開(kāi)。
use test;
load data local infile "文件名" into table 表名;
1:使用SHOW語(yǔ)句找出在服務(wù)器上當(dāng)前存在什么數(shù)據(jù)庫(kù):
mysql SHOW DATABASES;
2:2、創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)MYSQLDATA
mysql CREATE DATABASE MYSQLDATA;
3:選擇你所創(chuàng)建的數(shù)據(jù)庫(kù)
mysql USE MYSQLDATA; (按回車(chē)鍵出現(xiàn)Database changed 時(shí)說(shuō)明操作成功!)
4:查看現(xiàn)在的數(shù)據(jù)庫(kù)中存在什么表
mysql SHOW TABLES;
5:創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)表
mysql CREATE TABLE MYTABLE (name VARCHAR(20), sex CHAR(1));
6:顯示表的結(jié)構(gòu):
mysql DESCRIBE MYTABLE;
7:往表中加入記錄
mysql insert into MYTABLE values ("hyq","M");
8:用文本方式將數(shù)據(jù)裝入數(shù)據(jù)庫(kù)表中(例如D:/mysql.txt)
mysql LOAD DATA LOCAL INFILE "D:/mysql.txt" INTO TABLE MYTABLE;
9:導(dǎo)入.sql文件命令(例如D:/mysql.sql)
mysqluse database;
mysqlsource d:/mysql.sql;
10:刪除表
mysqldrop TABLE MYTABLE;
11:清空表
mysqldelete from MYTABLE;
12:更新表中數(shù)據(jù)
mysqlupdate MYTABLE set sex="f" where name='hyq';
使用下面的SQL語(yǔ)句修改:
UPDATE vodcms.vodcms_category SET locked=0 WHERE ID=5
你的計(jì)劃任務(wù)可能要用批處理來(lái)做,先做一個(gè)a.sql文件(用記事本編輯),內(nèi)容就是上面那一行UPDATE語(yǔ)句。
然后寫(xiě)一個(gè)a.bat文件,內(nèi)容如下:
d:\mysql\bin\mysql.exe -u root -p密碼 d:\mysql\a.sql
注意,里面的文件的路徑要使用你機(jī)器的,數(shù)據(jù)庫(kù)用戶名和密碼也要使用你機(jī)器上的。
最后讓計(jì)劃任務(wù)定時(shí)執(zhí)行你的a.bat即可,早上和完善的程序各是一套。
MySQL 的 Binlog 記錄著 MySQL 數(shù)據(jù)庫(kù)的所有變更信息,了解 Binlog 的結(jié)構(gòu)可以幫助我們解析Binlog,甚至對(duì) Binlog 進(jìn)行一些修改,或者說(shuō)是“篡改”,例如實(shí)現(xiàn)類(lèi)似于 Oracle 的 flashback 的功能,恢復(fù)誤刪除的記錄,把 update 的記錄再還原回去等。本文將帶您探討一下這些神奇功能的實(shí)現(xiàn),您會(huì)發(fā)現(xiàn)比您想象地要簡(jiǎn)單得多。本文指的 Binlog 是 ROW 模式的 Binlog,這也是 MySQL 8 里的默認(rèn)模式,STATEMENT 模式因?yàn)槭褂弥杏泻芏嘞拗?,現(xiàn)在用得越來(lái)越少了。
Binlog 由事件(event)組成,請(qǐng)注意是事件(event)不是事務(wù)(transaction),一個(gè)事務(wù)可以包含多個(gè)事件。事件描述對(duì)數(shù)據(jù)庫(kù)的修改內(nèi)容。
現(xiàn)在我們已經(jīng)了解了 Binlog 的結(jié)構(gòu),我們可以試著修改 Binlog 里的數(shù)據(jù)。例如前面舉例的 Binlog 刪除了一條記錄,我們可以試著把這條記錄恢復(fù),Binlog 里面有個(gè)刪除行(DELETE_ROWS_EVENT)的事件,就是這個(gè)事件刪除了記錄,這個(gè)事件和寫(xiě)行(WRITE_ROWS_EVENT)的事件的數(shù)據(jù)結(jié)構(gòu)是完全一樣的,只是刪除行事件的類(lèi)型是 32,寫(xiě)行事件的類(lèi)型是 30,我們把對(duì)應(yīng)的 Binlog 位置的 32 改成 30 即可把已經(jīng)刪除的記錄再插入回去。從前面的 “show binlog events” 里面可看到這個(gè) DELETE_ROWS_EVENT 是從位置 378 開(kāi)始的,這里的位置就是 Binlog 文件的實(shí)際位置(以字節(jié)為單位)。從事件(event)的結(jié)構(gòu)里面可以看到 type_code 是在 event 的第 5 個(gè)字節(jié),我們寫(xiě)個(gè) Python 小程序把把第383(378+5=383)字節(jié)改成 30 即可。當(dāng)然您也可以用二進(jìn)制編輯工具來(lái)改。
找出 Binlog 中的大事務(wù)
由于 ROW 模式的 Binlog 是每一個(gè)變更都記錄一條日志,因此一個(gè)簡(jiǎn)單的 SQL,在 Binlog 里可能會(huì)產(chǎn)生一個(gè)巨無(wú)霸的事務(wù),例如一個(gè)不帶 where 的 update 或 delete 語(yǔ)句,修改了全表里面的所有記錄,每條記錄都在 Binlog 里面記錄一次,結(jié)果是一個(gè)巨大的事務(wù)記錄。這樣的大事務(wù)經(jīng)常是產(chǎn)生麻煩的根源。我的一個(gè)客戶有一次向我抱怨,一個(gè) Binlog 前滾,滾了兩天也沒(méi)有動(dòng)靜,我把那個(gè) Binlog 解析了一下,發(fā)現(xiàn)里面有個(gè)事務(wù)產(chǎn)生了 1.4G 的記錄,修改了 66 萬(wàn)條記錄!下面是一個(gè)簡(jiǎn)單的找出 Binlog 中大事務(wù)的 Python 小程序,我們知道用 mysqlbinlog 解析的 Binlog,每個(gè)事務(wù)都是以 BEGIN 開(kāi)頭,以 COMMIT 結(jié)束。我們找出 BENGIN 前面的 “# at” 的位置,檢查 COMMIT 后面的 “# at” 位置,這兩個(gè)位置相減即可計(jì)算出這個(gè)事務(wù)的大小,下面是這個(gè) Python 程序的例子。
切割 Binlog 中的大事務(wù)
對(duì)于大的事務(wù),MySQL 會(huì)把它分解成多個(gè)事件(注意一個(gè)是事務(wù) TRANSACTION,另一個(gè)是事件 EVENT),事件的大小由參數(shù) binlog-row-event-max-size 決定,這個(gè)參數(shù)默認(rèn)是 8K。因此我們可以把若干個(gè)事件切割成一個(gè)單獨(dú)的略小的事務(wù)
ROW 模式下,即使我們只更新了一條記錄的其中某個(gè)字段,也會(huì)記錄每個(gè)字段變更前后的值,這個(gè)行為是 binlog_row_image 參數(shù)控制的,這個(gè)參數(shù)有 3 個(gè)值,默認(rèn)為 FULL,也就是記錄列的所有修改,即使字段沒(méi)有發(fā)生變更也會(huì)記錄。這樣我們就可以實(shí)現(xiàn)類(lèi)似 Oracle 的 flashback 的功能,我個(gè)人估計(jì) MySQL 未來(lái)的版本從可能會(huì)基于 Binlog 推出這樣的功能。
了解了 Binlog 的結(jié)構(gòu),再加上 Python 這把瑞士軍刀,我們還可以實(shí)現(xiàn)很多功能,例如我們可以統(tǒng)計(jì)哪個(gè)表被修改地最多?我們還可以把 Binlog 切割成一段一段的,然后再重組,可以靈活地進(jìn)行 MySQL 數(shù)據(jù)庫(kù)的修改和遷移等工作。
在Windows命令行下修改mysql數(shù)據(jù)庫(kù)密碼步驟如下:
1、通過(guò)dos命令進(jìn)入mysql的bin目錄;
2、輸入“mysql -uroot -p”,回車(chē)進(jìn)入mysql命令狀態(tài);
3、如果root原來(lái)有密碼,mysql將提示輸入原密碼,再進(jìn)入mysql命令狀態(tài);
4、這里假設(shè)將root用戶密碼修改為mysql56,則在mysql命令狀態(tài)下輸入:
update mysql.user set password=PASSWORD('mysql56') where user='root';
提示Query OK,說(shuō)明已更新。
5、輸入FLUSH PRIVILEGES;來(lái)保存修改內(nèi)容,在mysql命令狀態(tài)下輸入:
FLUSH PRIVILEGES;回車(chē)
至此,密碼修改完成。
新聞標(biāo)題:mysql命令怎么改,mysql密碼修改命令
文章來(lái)源:http://muchs.cn/article24/hcjsce.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化、服務(wù)器托管、關(guān)鍵詞優(yōu)化、全網(wǎng)營(yíng)銷(xiāo)推廣、網(wǎng)站收錄、微信公眾號(hào)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
全網(wǎng)營(yíng)銷(xiāo)推廣知識(shí)