本文由秀依林楓提供友情贊助,首發於爛泥行天下。
1、連接數據庫的格式
mysql -h IP -u用戶名 -p密碼;
1.1連接遠程數據庫
mysql -h 192.168.1.214 -uroot -p123456
也可寫成:
mysql -h 192.168.1.214 -u root -p 123456
1.2連接本地數據庫
mysql -uroot -p123456
也可寫成:
mysql -u root -p 123456
2、查看數據庫版本
mysql> status;
3、查看數據庫
show databases;
4、查看數據庫中的用戶
select user from user;
5、更改用戶密碼
5.1更改本地root用戶密碼
格式:mysqladmin -u用戶名 -p舊密碼 password 新密碼
mysqladmin -uroot -p123456 password ilanni
注意:新安裝的mysql數據庫,由於開始時root沒有密碼,所以在第一次修改root用戶密碼時,-p舊密碼一項就可以省略。如下:
mysqladmin -uroot password 123456
5.2更改遠程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、創建數據庫
create database ailanni;
此時可在OS上查看已經創建的數據庫,如下:
ps aux |grep mysqld 查看mysql的運行所在的位置,以及數據文件存放位置
ls /usr/local/mysql/data
7、使用數據庫
use ailanni;
8、刪除數據庫
drop database ailanni;
此時會同時會刪除OS上的數據庫文件夾,如下:
ls /usr/local/mysql/data
9、創建數據庫的表
create table ilannitable(id int(4));
10、查看數據庫的表
show tables;
11、顯示數據庫表的結構
describe ilannitable;
12、向表中插入數據
insert into ilannitable values(1);
insert into ilannitable values(2);
13、刪除插入的數據
delete from ilannitable where id='1';
14、清空表
delete from ilannitable;
15、刪除表
drop table ilannitable;
16、創建用戶
格式:create user username@ip identified by 'password';
create user 'ailanni'@'%' identified by 'ailanni';
17、刪除用戶
drop user alianni;
18、用戶授權
格式:grant privileges on database.table to user@ip identified by ‘password’;
privileges表示權限。
grant all on ailanni.* to 'ailanni'@'%' identified by 'ailanni';
FLUSH PRIVILEGES;
privileges權限分類:
all: 允許做任何事(和root一樣)。這個平時使用的比較多,實際生產環境中就是一個用戶對一個數據庫。
usage: 只允許登錄–其它什麼也不允許做。
alter: 修改已存在的數據表(例如增加/刪除列)和索引。
create: 建立新的數據庫或數據表。
delete: 刪除表的記錄。
drop: 刪除數據表或數據庫。
index: 建立或刪除索引。
insert: 增加表的記錄。
select: 顯示/搜索表的記錄。
update: 修改表中已存在的記錄。
注意在給用戶授權時,一定不要這樣授權:
grant all on *.* to 'ailanni'@'%' identified by 'ailanni';
因為這樣就相當於把ailanni這個用戶授予最高權限,具有管理所有數據庫的能力,相當於root用戶的權限。這樣是非常不安全的。
19、查看用戶權限
show grants for 'ailanni'@'%';
20、用戶權限刪除
格式:revoke privilege on database.table from user@ip identified by ‘password’;
revoke all on ailanni.* from 'ailanni'@'%' identified by 'ailanni';
21、數據庫備份
格式:mysqldump -hhostname -uusername -ppassword databasename > backupfile.sql;
mysqldump -h 192.168.1.214 -uroot -p123456 ailanni >ailanni.sql
22、數據庫恢復
mysql -hhostname -uusername -ppassword databasename< backupfile.sql;
mysql數據庫的恢復剛好和備份一反。
23、有關數據庫用戶及數據庫的刪除順序
在刪除數據庫或者用戶時,一定要先進行權限的刪除。然後在進行數據庫和用戶的刪除,否則會產生其他不可預知的錯誤。
啟動:net start mySql;
進入:mysql -u root -p/mysql -h localhost -u root -p databaseName;
列出數據庫:show databases;
選擇數據庫:use databaseName;
列出表格:show tables;
顯示表格列的屬性:show columns from tableName;
建立數據庫:source fileName.txt;
匹配字符:可以用通配符_代表任何一個字符,%代表任何字符串;
增加一個字段:alter table tabelName add column fieldName dateType;
增加多個字段:alter table tabelName add column fieldName1 dateType,add columns fieldName2 dateType;
多行命令輸入:注意不能將單詞斷開;當插入或更改數據時,不能將字段的字符串展開到多行裡,否則硬回車將被儲存到數據中;
增加一個管理員帳戶:grant all on *.* to user@localhost identified by "password";
每條語句輸入完畢後要在末尾填加分號';',或者填加'\g'也可以;
查詢時間:select now();
查詢當前用戶:select user();
查詢數據庫版本:select version();
查詢當前使用的數據庫:select database();
1、刪除student_course數據庫中的students數據表:
rm -f student_course/students.*
2、備份數據庫:(將數據庫test備份)
mysqldump -u root -p test>c:\test.txt
備份表格:(備份test數據庫下的mytable表格)
mysqldump -u root -p test mytable>c:\test.txt
將備份數據導入到數據庫:(導回test數據庫)
mysql -u root -p test
3、創建臨時表:(建立臨時表zengchao)
create temporary table zengchao(name varchar(10));
4、創建表是先判斷表是否存在
create table if not exists students(……);
5、從已經有的表中復制表的結構
create table table2 select * from table1 where 1<>1;
6、復制表
create table table2 select * from table1;
7、對表重新命名
alter table table1 rename as table2;
8、修改列的類型
alter table table1 modify id int unsigned;//修改列id的類型為int unsigned
alter table table1 change id sid int unsigned;//修改列id的名......余下全文>>
命令行
1、顯示當前數據庫服務器中的數據庫列表:mysql> SHOW DATABASES;
2、建立數據庫:mysql> CREATE DATABASE 庫名;
3、建立數據表:mysql> USE 庫名;mysql> CREATE TABLE 表名 (字段名 VARCHAR(20), 字段名 CHAR(1));
4、刪除數據庫:mysql> DROP DATABASE 庫名;
5、刪除數據表:mysql> DROP TABLE 表名;
6、將表中記錄清空:mysql> DELETE FROM 表名;
7、往表中插入記錄:mysql> INSERT INTO 表名 VALUES ("hyq","M");
8、更新表中數據:mysql-> UPDATE 表名 SET 字段名1='a',字段名2='b' WHERE 字段名3='c';
9、用文本方式將數據裝入數據表中:mysql> load data local infile "d:/mysql.txt" into table 表名;
10、導入.sql文件命令:mysql> USE 數據庫名;mysql> source d:/mysql.sql;
11、命令行修改root密碼:mysql> update mysql.user set password=password('新密碼') where user='root';mysql> flush privileges;
12.修改密碼的三種方法:mysql>update user set password=password('123456') where user='joy_pen';mysql>flush privileges;mysql>set password for 'joy_oen'=password('123456');mysql>grant usage on *.* to 'joy_pen' identified by '123456';
1、創建數據庫
命令:create database <數據庫名>例如:建立一個名為xhkdb的數據庫mysql> create database xhkdb;
2、顯示所有的數據庫
命令:show databases (注意:最後有個s)mysql> show databases;
3、刪除數據庫
命令:drop database <數據庫名>例如:刪除名為 xhkdb的數據庫mysql> drop database xhkdb;
4、連接數據庫
命令: use <數據庫名>例如:如果xhkdb數據庫存在,嘗試存取它:mysql> use xhkdb;屏幕提示:Database changed
5、當前選擇(連接)的數據庫mysql> select database();
6、當前數據庫包含的表信息:mysql> show tables; (注意:最後有個s)
三、表操作,操作之前應連接某個數據庫
1、建表
命令:create table <表名......余下全文>>