mysql安装与使用
以管理员身份打开 cmd 命令行工具,切换目录:
cd E:\mysql-8.0.20-winx64\bin
执行完成后,会输出 root 用户的初始默认密码
E:\mysql-8.0.20-winx64\bin>mysqld --initialize --console
2020-05-26T08:11:50.887687Z 0 [System] [MY-013169] [Server] E:\mysql-8.0.20-winx64\bin\mysqld.exe (mysqld 8.0.20) initializing of server in progress as process 20140
2020-05-26T08:11:51.007367Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2020-05-26T08:11:55.839367Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2020-05-26T08:12:04.274142Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: rUgJ&1tH/d8j
输入以下安装命令:
mysqld install
启动输入以下命令即可:
net start mysql
注意: 在 5.7 需要初始化 data 目录:
cd C:\web\mysql-8.0.11\bin
mysqld --initialize-insecure
初始化后再运行 net start mysql 即可启动 mysql。
登录 MySQL
当 MySQL 服务已经运行时, 我们可以通过 MySQL 自带的客户端工具登录到 MySQL 数据库中, 首先打开命令提示符, 输入以下格式的命名:
mysql -h 主机名 -u 用户名 -p
参数说明:
-h : 指定客户端所要登录的 MySQL 主机名, 登录本机(localhost 或 127.0.0.1)该参数可以省略;
-u : 登录的用户名;
-p : 告诉服务器将会使用一个密码来登录, 如果所要登录的用户名密码为空, 可以忽略此选项。
如果我们要登录本机的 MySQL 数据库,只需要输入以下命令即可:
mysql -u root -p
按回车确认, 如果安装正确且 MySQL 正在运行, 会得到以下响应:
Enter password:
若密码存在, 输入密码登录, 不存在则直接按回车登录。登录成功后你将会看到 Welcome to the MySQL monitor… 的提示语。
然后命令提示符会一直以 mysq> 加一个闪烁的光标等待命令的输入, 输入 exit 或 quit 退出登录。
mysql关键字都用大写
CREATE DATABASE scraping;
USE scraping;
CREATE TABLE pages; 会报错ERROR 1113 (42000): A table must have at least 1 column
CREATE TABLE pages(id BIGINT(7) NOT NULL AUTO_INCREMENT, title VARCHAR(200), CONTENT varchar(10000),created TIMESTAMP DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY(id));
查看表结构
DESCRIBE pages;
插入语句
INSERT INTO pages(title,content) VALUES(“Test page title”,“This is some test page content.It can be up 10000 characters long.”);
INSERT INTO pages(title,content) VALUES(“汉字标题”,“汉字测试页内容 。它可以支持10000字符”);
处理Unicode字符串,需要设置数据库
ALTER DATABASE scraping CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;
ALTER TABLE pages CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE pages CHANGE title title VARCHAR(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE pages CHANGE content content VARCHAR(10000) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
*****根据表结构生成数据库
#!/usr/bin/python3
import pymysql
db = pymysql.connect(“localhost”,“testuser”,“test123”,“TESTDB” )
cursor = db.cursor()
cursor.execute(“DROP TABLE IF EXISTS EMPLOYEE”)
sql = “”“CREATE TABLE EMPLOYEE (
FIRST_NAME CHAR(20) NOT NULL,
LAST_NAME CHAR(20),
AGE INT,
SEX CHAR(1),
INCOME FLOAT )”""
cursor.execute(sql)
db.close()