111111

mysql应用管理及进阶实战

prompt \u@ceshi \r:\m:s->   ###临时改变命令提示符

如果想永久生效放入my.conf里面的 [mysql]下面  prompt \u@ceshi \r:\m:s->

mysql登录

# mysql -h 127.0.0.1 -u mysql -P 3000   #远程连接  IP + 端口

mysql -h localhost -u root  -S /data/ops/app/mysql-5.6.23/3307/3307.sock 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
MySQL修改root密码的多种方法
在 Navicat for MySQL 下面直接执行  SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');   就可以
 
  
 
  
 
方法1: 用SET PASSWORD命令
 
  mysql -u root
 
  mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');
 
方法2:用mysqladmin
 
  mysqladmin -u root password "newpass"
 
  如果root已经设置过密码,采用如下方法
 
  mysqladmin -u root password oldpass "newpass"
 
方法3: 用UPDATE直接编辑user表
 
  mysql -u root
 
  mysql> use mysql;
 
  mysql> UPDATE user SET Password = PASSWORD('newpass') WHERE user = 'root';
 
  mysql> FLUSH PRIVILEGES;
 
在丢失root密码的时候,可以这样
 
  mysqld_safe --skip-grant-tables&
 
  mysql -u root mysql
 
  mysql> UPDATE user SET password=PASSWORD("new password") WHERE user='root';
 
  mysql> FLUSH PRIVILEGES;<br><br>##生产环境<br>./mysqld_safe --defaults-file=/data/ops/app/mysql-5.6.23/etc/3308.cnf --skip-grant-tables --user=mysql&<br>mysql> update mysql.user set password=password('123456') where user='root';<br>mysql> flush privileges;<br>mysqladmin -h127.0.0.1  -uroot -p shutdown  ###输入密码123456<br><br>mysql -h127.0.0.1 -uroot -P3003 -p  #输入密码登录成功123456<br>

 

sql---日常操作

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
mysql> select user,host,password from mysql.user order by user; ##查询并排序
mysql> delete from mysql.user where user=' '##删除用户
mysql> create database test;        创建数据库
mysql> show create database test\G #查看创建数据库,默认创建字符集latin1
mysql> create database test_gbk DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci; ###创建指定的字符集数据库
mysql> show create dabases test_gbk\G  ##查看创建的数据库发现字符集变成gbk
mysql> create database test_utf8 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; ###创建utf8数据库
mysql> show create dabases test_utf8\G ##查看创建的数据库字符集变成utf8
 
##提示 字符集的不一致是数据库中午乱码的罪魁祸首,有关字符集的看后面
##提示 如果变异的时候指定了字符集 以后创建数据库就不需要指定了
企业里:
1根据开发的程序确定字符集(建议用utf8)
2.编译的时候指定字符集
3.编译的时候没有指定字符集或者指定了和程序不同的字符集,如果解决?   ###指定字符集创建数据库即可。
 
显示数据库
show databases;
select database();
删除数据库
mysql> drop database test;
切换数据库
use test_utf8;
查看版本
select version();
查看当前用户
select user();
查看当前时间
select now();
创建用户
mysql> create user 'haha'@'localhost' identified by '123';
删除用户
mysql> drop user 'haha'@'localhost';
创建并授权
grant all privileges on test.* to oldboy@'localhost' identified by 'oldboy123';
查看用户权限
mysql> show grants for oldboy@localhost;
只授权
grant all ON test.* to 'haha'@'localhost';
远程授权
mysql> create user test@'10.0.0.%' identified by 'test';
 
回收权限
mysql> show grants for oldboy@localhost;
+---------------------------------------------------------------------------------------------------------------+
| Grants for oldboy@localhost                                                                                   |
+---------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'oldboy'@'localhost' IDENTIFIED BY PASSWORD '*FE28814B4A8B3309DAC6ED7D3237ADED6DA1E515' |
| GRANT ALL PRIVILEGES ON `test`.* TO 'oldboy'@'localhost'                                                      |
+---------------------------------------------------------------------------------------------------------------+
2 rows in set (0.00 sec)
 
mysql> revoke insert on test.* from 'oldboy'@'localhost';
Query OK, 0 rows affected (0.00 sec)
 
mysql> show grants for oldboy@localhost;
企业环境尽量最小化权限,只给增删改查,把创建删除收回。
 
 
 
创建表
mysql> create table tutorials_tbl(    tutorial_id INT NOT NULL AUTO_INCREMENT,    tutorial_title VARCHAR(100) NOT NULL,    tutorial_author VARCHAR(40) NOT NULL,    submission_date DATE,    PRIMARY KEY ( tutorial_id ) );
查看表结构
mysql> desc tutorials_tbl;
mysql> show create table tutorials_tbl;

 

posted @   赵SIR  阅读(335)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示