您好,登錄后才能下訂單哦!
### 忘記密碼
vim /etc/my.cf
在[mysqld]中添加 skip-grant-tables
重啟Mysql
現(xiàn)在可以直接進(jìn)入mysql,改掉root密碼
執(zhí)行以下命令
USE mysql;
UPDATE user SET Password = password('新密碼') WHERE User = 'root';更新user表中root密碼
flush privileges;
刪掉/etc/my.cf中添加的 skip-grant-tables
重啟mysql 就OK了
mysql具體操作
登錄
mysql -h 登錄主機(jī) -u用戶名 -p密碼
2.創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)
create database 數(shù)據(jù)庫(kù)名 character set gbk;
選擇要使用的數(shù)據(jù)庫(kù) : use 數(shù)據(jù)庫(kù)名;
也可以在登錄時(shí)直接選擇:mysql -D 數(shù)據(jù)庫(kù)名 -uroot -p
3.創(chuàng)建數(shù)據(jù)庫(kù)表
create table 表名 (列聲明);
以創(chuàng)建成績(jī)表為例,內(nèi)容為學(xué)號(hào)(id)、姓名(name)、性別(sex)、成績(jī)(grade):
create table student (
id int unsigned not null auto_increment primary key,
name char(8) not null,
sex char(4) not null,
grade int unsigned null default "absent"
);
對(duì)于一些較長(zhǎng)的語句,可以通過任意文本編輯器將語句寫好保存為createtable.sql,通過命令提示符下的文件重定向執(zhí)行執(zhí)行該腳本。
mysql -D 數(shù)據(jù)庫(kù)名 -uroot -p < createtable.sql
語句解釋:
括號(hào)內(nèi)聲明了4列內(nèi)容, id、name、sex、grade為每列的名稱, 后面跟的是數(shù)據(jù)類型描述, 列與列的描述之間用逗號(hào)(,)隔開;
int指定該列的類型為int(范圍為-83888608到83888607),在后面又有unsigned加以修飾,表示該類型為無符號(hào)類型,此時(shí)該列的取值為0到16777215;
not null 表示該列值不能為空,必須填,如果不指定該屬性,默認(rèn)可為空;
auto_increment 需在整數(shù)列中使用, 其作用是在插入數(shù)據(jù)時(shí)若該列為 NULL, MySQL將自動(dòng)產(chǎn)生一個(gè)比現(xiàn)存值更大的唯一標(biāo)識(shí)符值。在每張表中僅能有一個(gè)這樣的值且所在列必須為索引列。
primary key 表示該列是表的主鍵, 本列的值必須唯一, MySQL將自動(dòng)索引該列。
char(8)表示字符長(zhǎng)度為8,tinyint取值范圍是-127到128 加上unsigned就是0到255
用show tables;就可以查看記得表了
4.向表中插入數(shù)據(jù)
insert into student values(值1,值2,值3,值4...)
有時(shí)只需要插入部分?jǐn)?shù)據(jù) insert into student (列名1,列名2,列名3) values(值1,值2,值3)
5.查詢表中數(shù)據(jù)
select 列名稱 from 表名 [WHERE 查詢條件]
例:查詢所有人名字
select name from student;
查詢所有人學(xué)號(hào)和姓名
select id,name from student;
查詢所有內(nèi)容
select * from student;
按條件查詢
= < > != is[not]null in like
例:查詢所有女生信息
select * from student where sex = '女’;
查詢成績(jī)?cè)?0分以上的人
select * from student where grade > 60;
查詢姓王的人
select * from student name like '%王%'
查詢id小于10且成績(jī)大于60的人
select * from stutdent where id<10 and grade>60;
6.更新表中的數(shù)據(jù)
update 表名 set 列名=新值 where 條件;
例:
將id為10的成績(jī)改成70
update student set grade=70 where id=10;
將姓名為呂江濤的id改為10,grade改為60
update student set id=10,grade=60 where name='呂江濤’;
7.刪除表中數(shù)據(jù)
delete from 表名 where 條件
例:
刪除id=2的行:
delete from student where id=2;
刪除成績(jī)<30的數(shù)據(jù):
delete from student where grade<30;
刪除表中所有數(shù)據(jù):
delete from student;
8.創(chuàng)建后表的修改
添加列
alter table 表名 add 列名稱 [after 插入位置];
例:
在表后面追加列地址address:
alter table student add address char(60);
在名為grade的后面追加tel:
alter table student add tel char(13) after grade;
修改列
alter table student change 列名稱 新列名稱 新數(shù)據(jù)類型
例:
將id列改為idnum
alter table student change id idnum int unsigned auto_increment primary key;
將name數(shù)據(jù)類型改為char(16)
alter table student change name name char(16) not null;
刪除列
alter table 表名 drop 列名稱
例
刪除tel列
alter table student drop tel;
重命名表
alter table student rename students;
刪除整張表
drop table 表名;
刪除整個(gè)數(shù)據(jù)庫(kù)
drop datebase 數(shù)據(jù)庫(kù)名;
修改用戶密碼
mysqladmin -uroot -p password 新密碼
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。