MySQL数据库操作,之前也分享了很多了。今天来一个完全流程版本的指南!内容不高深,但MySQL操作的基本整体流程必备!
本地连接:
mysql -u root -p
mysql>
远程连接:
mysql -h110.110.110.110 -u root -p123
-h
参数指定远程主机IP-p
后无需空格退出MySQL:
exit;
修改root密码:
mysqladmin -u root -p旧密码 password 新密码
示例:
mysqladmin -u root password ab12 # 设置初始密码
mysqladmin -u root -p ab12 password djg345 # 修改密码
创建全权限用户(谨慎使用):
GRANT SELECT,INSERT,UPDATE,DELETE ON *.* TO 'test1'@'%' IDENTIFIED BY 'abc';
%
表示允许从任何主机连接创建受限用户:
GRANT SELECT,INSERT,UPDATE,DELETE ON mydb.* TO 'test2'@'localhost' IDENTIFIED BY 'abc';
基本创建:
CREATE DATABASE xhkdb;
完整创建流程(推荐):
CREATE DATABASE mydb;
GRANT ALL PRIVILEGES ON mydb.* TO 'mydb'@'localhost' IDENTIFIED BY 'password';
SET PASSWORD FOR 'mydb'@'localhost' = OLD_PASSWORD('password');
查看所有数据库:
SHOW DATABASES;
删除数据库:
DROP DATABASE IF EXISTS xhkdb; # 安全删除方式
选择数据库:
USE xhkdb;
查看当前数据库:
SELECT DATABASE();
CREATE TABLE MyClass (
id INT(4) NOT NULL PRIMARY KEY AUTO_INCREMENT,
name CHAR(20) NOT NULL,
sex INT(4) NOT NULL DEFAULT '0',
degree DOUBLE(16,2)
);
PRIMARY KEY
设置主键AUTO_INCREMENT
自动递增DEFAULT
设置默认值删除表:
DROP TABLE IF EXISTS MyClass;
修改表名:
RENAME TABLE MyClass TO YouClass;
INSERT INTO MyClass VALUES
(1,'Tom',96.45),
(2,'Joan',82.99),
(3,'Wang',96.59);
基本查询:
SELECT * FROM MyClass;
条件查询:
SELECT name, degree FROM MyClass WHERE degree > 90;
限制结果集:
SELECT * FROM MyClass ORDER BY id LIMIT 2; # 前2条记录
UPDATE MyClass SET name='Mary' WHERE id=1;
DELETE FROM MyClass WHERE id=1;
ALTER TABLE MyClass ADD passtest INT(4) DEFAULT '0';
ALTER TABLE MyClass CHANGE name fullname VARCHAR(30);
ALTER TABLE MyClass DROP passtest;
添加索引:
ALTER TABLE MyClass ADD INDEX idx_name (name);
添加唯一索引:
ALTER TABLE MyClass ADD UNIQUE idx_card (cardnumber);
删除索引:
ALTER TABLE MyClass DROP INDEX idx_name;
mysqldump -u root -p database_name > backup.sql
mysqldump -u root -p database_name table_name > table_backup.sql
mysqldump -u root -p -d --add-drop-table database_name > struct_backup.sql
7.4 恢复数据库
mysql -u root -p database_name < backup.sql
SELECT VERSION();
SELECT NOW();
SELECT CONCAT(first_name, ' ', last_name) AS full_name FROM employees;
SELECT (4*4)/10+25; # 结果为26.60
DROP DATABASE IF EXISTS school;
CREATE DATABASE school;
USE school;
CREATE TABLE teacher (
id INT(3) AUTO_INCREMENT NOT NULL PRIMARY KEY,
name CHAR(10) NOT NULL,
address VARCHAR(50) DEFAULT '深圳',
year DATE
);
INSERT INTO teacher VALUES
(NULL,'allen','大连一中','1976-10-10'),
(NULL,'jack','大连二中','1975-12-23');
mysql -u root -p < school.sql
或MySQL命令行中:
SOURCE school.sql;
%
开放远程访问权限通过掌握这些MySQL操作命令,您将能够高效地管理和维护MySQL数据库。建议在实际操作前先在测试环境练习,确保熟悉各项命令的效果和影响。