烂泥:mysql数据库使用的基本命令
1、連接數(shù)據(jù)庫(kù)的格式
mysql -h IP -u用戶名 -p密碼;
1.1連接遠(yuǎn)程數(shù)據(jù)庫(kù)
mysql -h 192.168.1.214 -uroot -p123456
也可寫成:
mysql -h 192.168.1.214 -u root -p 123456
1.2連接本地?cái)?shù)據(jù)庫(kù)
mysql -uroot -p123456
也可寫成:
mysql -u root -p 123456
2、查看數(shù)據(jù)庫(kù)版本
mysql> status;
3、查看數(shù)據(jù)庫(kù)
show databases;
4、查看數(shù)據(jù)庫(kù)中的用戶
select user from user;
5、更改用戶密碼
5.1更改本地root用戶密碼
格式:mysqladmin -u用戶名 -p舊密碼 password 新密碼
mysqladmin -uroot -p123456 password ilanni
注意:新安裝的mysql數(shù)據(jù)庫(kù),由于開始時(shí)root沒有密碼,所以在第一次修改root用戶密碼時(shí),-p舊密碼一項(xiàng)就可以省略。如下:
mysqladmin -uroot password 123456
5.2更改遠(yuǎn)程root用戶密碼
mysqladmin -h 192.168.1.214 -uroot -p123456 password ilanni
5.3更改普通用戶密碼
格式:update user set password=PASSWORD('new_password') where user='username';
update user set password=PASSWORD('123456') where user='ailanni';
FLUSH PRIVILEGES;--立即生效,不需要重啟
6、創(chuàng)建數(shù)據(jù)庫(kù)
create database ailanni;
此時(shí)可在OS上查看已經(jīng)創(chuàng)建的數(shù)據(jù)庫(kù),如下:
ps aux |grep mysqld 查看mysql的運(yùn)行所在的位置,以及數(shù)據(jù)文件存放位置
ls /usr/local/mysql/data
7、使用數(shù)據(jù)庫(kù)
use ailanni;
8、刪除數(shù)據(jù)庫(kù)
drop database ailanni;
此時(shí)會(huì)同時(shí)會(huì)刪除OS上的數(shù)據(jù)庫(kù)文件夾,如下:
ls /usr/local/mysql/data
9、創(chuàng)建數(shù)據(jù)庫(kù)的表
create table ilannitable(id int(4));
10、查看數(shù)據(jù)庫(kù)的表
show tables;
11、顯示數(shù)據(jù)庫(kù)表的結(jié)構(gòu)
describe ilannitable;
12、向表中插入數(shù)據(jù)
insert into ilannitable values(1);
insert into ilannitable values(2);
13、刪除插入的數(shù)據(jù)
delete from ilannitable where id='1';
14、清空表
delete from ilannitable;
15、刪除表
drop table ilannitable;
16、創(chuàng)建用戶
格式:create user username@ip identified by 'password';
create user 'ailanni'@'%' identified by 'ailanni';
17、刪除用戶
drop user alianni;
18、用戶授權(quán)
格式:grant privileges on database.table to user@ip identified by ‘password’;
注意該命令可以同時(shí)創(chuàng)建用戶并授權(quán),也就是說我們不需要先創(chuàng)建用戶。
privileges表示權(quán)限。
grant all on ailanni.* to 'ailanni'@'%' identified by 'ailanni';
FLUSH PRIVILEGES;
privileges權(quán)限分類:
all:?允許做任何事(和root一樣)。這個(gè)平時(shí)使用的比較多,實(shí)際生產(chǎn)環(huán)境中就是一個(gè)用戶對(duì)一個(gè)數(shù)據(jù)庫(kù)。
usage: 只允許登錄–其它什么也不允許做。
alter: 修改已存在的數(shù)據(jù)表(例如增加/刪除列)和索引。
create: 建立新的數(shù)據(jù)庫(kù)或數(shù)據(jù)表。
delete: 刪除表的記錄。
drop: 刪除數(shù)據(jù)表或數(shù)據(jù)庫(kù)。
index: 建立或刪除索引。
insert: 增加表的記錄。
select: 顯示/搜索表的記錄。
update: 修改表中已存在的記錄。
replication slave:?權(quán)限應(yīng)授予從服務(wù)器所使用的將當(dāng)前服務(wù)器連接為主服務(wù)器的賬戶。沒有這個(gè)權(quán)限,從服務(wù)器不能發(fā)出對(duì)主服務(wù)器上的數(shù)據(jù)庫(kù)所發(fā)出的更新請(qǐng)求。這個(gè)權(quán)限在配置mysql主從時(shí),會(huì)使用到。
注意在給用戶授權(quán)時(shí),一定不要這樣授權(quán):
grant all on *.* to 'ailanni'@'%' identified by 'ailanni';
因?yàn)檫@樣就相當(dāng)于把a(bǔ)ilanni這個(gè)用戶授予最高權(quán)限,具有管理所有數(shù)據(jù)庫(kù)的能力,相當(dāng)于root用戶的權(quán)限。這樣是非常不安全的。
19、查看用戶權(quán)限
show grants for 'ailanni'@'%';
20、用戶權(quán)限刪除
格式:revoke privilege on database.table from user@ip identified by ‘password’;
revoke all on ailanni.* from 'ailanni'@'%' identified by 'ailanni';
21、數(shù)據(jù)庫(kù)備份
格式:mysqldump -hhostname -uusername -ppassword databasename > backupfile.sql;
mysqldump -h 192.168.1.214 -uroot -p123456 ailanni >ailanni.sql
22、數(shù)據(jù)庫(kù)恢復(fù)
mysql -hhostname -uusername -ppassword databasename< backupfile.sql;
mysql數(shù)據(jù)庫(kù)的恢復(fù)剛好和備份一反。
23、有關(guān)數(shù)據(jù)庫(kù)用戶及數(shù)據(jù)庫(kù)的刪除順序
在刪除數(shù)據(jù)庫(kù)或者用戶時(shí),一定要先進(jìn)行權(quán)限的刪除。然后在進(jìn)行數(shù)據(jù)庫(kù)和用戶的刪除,否則會(huì)產(chǎn)生其他不可預(yù)知的錯(cuò)誤。
24、mysql數(shù)據(jù)庫(kù)的啟動(dòng)與關(guān)閉
24.1?源碼編譯安裝
如果mysql是源碼編譯安裝,我們可以通過mysqld_safe命令來啟動(dòng),如下:
ls -l /usr/local/mysql/bin/
/usr/local/mysql/bin/mysqld_safe &
關(guān)閉mysql,可以通過kill命令,也可以使用pkill命令。
kill -9 mysqld_pid
pkill mysqld
24.2 rpm包安裝
啟動(dòng)與關(guān)閉mysql,可以直接使用service命令,也可以直接在/etc/init.d/mysqld啟動(dòng)。如下:
注意源碼編譯安裝,也可以通過上述命令啟動(dòng)與關(guān)閉mysql數(shù)據(jù)庫(kù)。但是需要做相關(guān)的操作。
本文轉(zhuǎn)自 爛泥行天下 51CTO博客,原文鏈接:http://blog.51cto.com/ilanni/1572813
總結(jié)
以上是生活随笔為你收集整理的烂泥:mysql数据库使用的基本命令的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2016php技术面试题,一个php的面
- 下一篇: oracle gather trace,