配置项目
在mysql-8.0.xx文件夹下,建立一个my.ini的配置文件
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
# 设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=C:\\web\\mysql-8.0.xx
# 设置 mysql数据库的数据的存放目录,MySQL 8+ 不需要以下配置,系统自己生成即可,否则有可能报错
# datadir=C:\\web\\sqldata
# 允许最大连接数
max_connections=20
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
-以管理员身份打开 cmd 命令行工具,切换mysql程序所在的目录:
cd C:\web\mysql-8.0.xx\bin
-初始化数据库
mysqld --initialize --console
-安装
mysqld install
-启动
net start mysql
-关闭
net stop mysql
mysql数据库命令
1.进入到数据库
先cd 到本地数据库的安装文件目录下,c:..\mysql-8.0.xx\bin
进入管理员权限的命令提示符工具(cmd),输入命令
// 这种方法不推荐,因为密码会明文显示
mysql -uroot -p123456
//推荐这种方法
mysql -uroot -p
//此时系统会提示输入密码
password:
//输入密码按回车即能进入
root是用户名,123456是自己设置的密码,没有密码的话该处留空
2.查看当前有多少已有的数据库
show databases;
3.新建一个数据库
create database 数据库名;
// 设置utf8,支持中文
create database 数据库名 character set utf8;
yourDatabaseName就是你要新建的数据库名
4.选中一个数据库
use yourDatabaseName
5.查询数据库中的表数据
select * from tableName;
6.退出mysql
exit;
7.查看当前数据库中所有的数据表
show tables;
8.创建数据表
CREATE TABLE pet(
-> name VARCHAR(20),
-> owner VARCHAR(20),
-> species VARCHAR(20),
-> sex CHAR(1),
-> birth DATE,
-> death DATE);
9.查看表详情
describe pet
10.往数据表中添加记录
INSERT INTO pet
VALUES ('Foo','bar','hanrh','f','1999-02-23',NULL);
11.删除数据表中的数据
delete from pet where name = 'Foo'
12.修改数据表中的数据
update pet set name = 'newName' where owner='bar';
13.启动mysql
net start mysql
14.更改加密方式
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
15.更改密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123';
16.刷新
FLUSH PRIVILEGES;
17.设置主键
为了确保唯一性,我们通常会给id设置主键。下面命令中的tableName是你的表名。
alter table tableName add primary key <id>;
18.创建带自增、主键的表(示例)
CREATE TABLE IF NOT EXISTS `runoob_tbl`(
`runoob_id` INT UNSIGNED AUTO_INCREMENT,
`runoob_title` VARCHAR(100) NOT NULL,
`runoob_author` VARCHAR(40) NOT NULL,
`submission_date` DATE,
PRIMARY KEY ( `runoob_id` )
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
实例解析:
-如果你不想字段为 NULL 可以设置字段的属性为 NOT NULL, 在操作数据库时如果输入该字段的数据为NULL ,就会报错。
-AUTO_INCREMENT定义列为自增的属性,一般用于主键,数值会自动加1。
-PRIMARY KEY关键字用于定义列为主键。 您可以使用多列来定义主键,列间以逗号分隔。
-ENGINE 设置存储引擎,CHARSET 设置编码。
19.添加一列
ALTER TABLE students ADD nums varchar(10);
20.删除一列
ALTER TABLE students drop nums;
常见问题
1.报错:1130-host ... is not allowed to connect to this MySql server
可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"
mysql -u root -pvmwaremysql>use mysql;
mysql>update user set host = '%' where user = 'root';
mysql>select host, user from user;
mysql>FLUSH PRIVILEGES;
网友评论