随笔示例(随笔通用)

lxf2023-05-08 00:24:01

001查看版本MySQL-version MySQL选择版本();mysql状态;002创建一个新的MySQL用户并授权插入MySQL。User (host,User,password)值(localhost,username,password(您的密码));授予*上的所有权限。*到“用户名”@“本地主机”

001查看版本

MySQL-version
MySQL > select version();
mysql >状态;

002创建一个新的MySQL用户并授权

插入到mysql.user(Host,user,Password)值(" localhost "," username ",Password(" your Password "));

授予*上的所有权限。*到“username ”@“localhost ”,由带有GRANT选项的“yourpassword”标识;

刷新权限;

003。查询支持的存储引擎
显示引擎;

004查看变量
显示类似' innodb% '的变量;

005导入数据库(sql文件)
MySQL-urot-pdb name < dbname . SQL
[H/][Client]#客户端配置
Port = 3306
socket =/var/lib/MySQL . sock #本地客户端使用此套接字公式不一致

[mysqld]
datadir =/usr/local/MySQL/data #指定数据路径
socket =/。br/] user = MySQL
old _ passwords = 1
secure _ auth = 0
innodb _ force _ recovery = 0 #必须为0。否则innodb就是只读模式
[mysqld _ safe]
log-error =/var/log/mysqld . log
PID-file =/var/run/mysqld。H/]007修改root密码
mysqld _ safe-skip-grant-tables
MySQL > update MySQL . user set password = password(" new _ pass ")

008让mysql服务器输出所有执行的sql语句记录

mysqld - general-log=TRUE

日志输出是mysql服务器数据目录的localhost.log。请执行mysqld - verbose - help来查看其他日志。

009数据库导出导入

导出数据
MySQL dump-uusername-ppassword databasename > databasename . SQL
导出存储过程和函数
MySQL dump-uusername-ppassword-NTD-rdatabasename > stored-procs . SQL
仅导出表结构
。Mysql dump-uusername-PP assword-d-add-drop-table databasename > table-init . SQL
导入SQL文件(可以是数据、表结构、存储过程...)
MySQL-uusername-

010查看当前正在运行哪些线程

mysql >显示进程列表;


在Info字段中,您还可以查看已执行的语句。如果有执行缓慢的语句,可以直接查询。

011删除表记录

DELETE FROM tablename

截断表tablename

012 MySQL存储过程的SQL保密性
MySQL存储过程中的SQL保密性决定了执行相关存储过程时的安全限制,SQL保密性可以是DEFINER,也可以是INVOKER。
DEFINER是指执行该存储过程的用户必须是该存储过程的创建者,并且该用户必须存在并拥有相应的权限。
INVOKER表示执行该存储过程的用户必须是现有用户,并且该用户具有相应的权限。

创建存储过程时,可以指定SQL保密性。以下示例将SQL secrecy指定为INVOKER。
CREATE DEFINER = ' admin ' @ ' localhost '过程account_count()
SQL安全调用程序
BEGIN
SELECT ' Number of accounts:',COUNT(*)FROM MySQL . user;
END;

SQL保密也可以通过修改mysql.proc表中对应的字段security_type来设置。示例
update MySQL . procsetsecurity _ type =...

或者

alter procedure pro_name sql安全调用程序;

013将字段(时间字段)添加到数据表

MySQL > alter table mytable add column ctime datetime DEFAULT NOW()NOT NULL after flag;
查询正常,0行受影响(0.26秒)
记录:0重复:0警告:0

014左右连接

语法:

select * from tableA
left | right JOIN tableB
on tableA . field 1 = tableB . field 2
left JOIN:查找NULL基于左(表a)表的合格表a和表b。

右连接:根据右Tableab表找出所有符合条件的Tableas和table ab,不存在Tableas的记录显示Tableas相关字段为空;;

修改列定义并定义索引

ALTER TABLE TABLE _ name modify column _ name varchar(32);
ALTER TABLE TABLE _ name ADD INDEX ` column _ name `( ` column _ name `);

016 make MySQL

http://dev . MySQL . com/doc/internals/en/cmake-build-options-official-MySQL . html

  • Unix(生成文件)

    mkdir bld cd bld cmake .. -DBUILD_CONFIG=mysql_release make
  • 注意:如果安装libaio后仍然提示依赖,重新执行上述步骤(删除bld)

    017 mysql升级后无法授予用户权限。更正一下。

    2014-05-27 14:48:34 17291[错误]缺少系统表mysql.proxies _ priv请运行mysql_upgrade创建它
    2014-05-27 14:48:34 17291[警告] Info表还不能使用。无法打开表“mysql.slave_master_info”。
    2014-05-27 14:48:34 17291[警告]信息表还不能使用。无法打开表' mysql.slave_relay_log_info '。
    2014-05-27 14:48:34 17291[错误]本机表' performance_schema '。“cond_instances”的结构不正确
    2014-05-27 14:48:34 17291[错误]本机表“performance_schema”。“events_waits_current”的结构不正确
    2014-05-27 14:48:34 17291[错误]本机表“performance_schema”。“events_waits_history”的结构不正确
    2014-05-27 14:48:34 17291[错误]本机表“performance_schema”。“events_waits_history_long”的结构不正确
    2014-05-27 14:48:34 17291[错误]本机表“performance_schema”。“events _ waits _ summary _ by _ host _ by _ event _ name”的结构不正确
    2014-05-27 14:48:34 17291[错误]本机表“performance_schema”。“events _ waits _ summary _ by _ instance”的结构不正确
    2014-05-27 14:48:34 17291[错误]本机表“performance_schema”。“events _ waits _ summary _ by _ thread _ by _ event _ name”的结构不正确
    2014-05-27 14:48:34 17291[错误]本机表“performance_schema”。“events _ waits _ summary _ by _ user _ by _ event _ name”的结构不正确
    2014-05-27 14:48:34 17291[错误]本机表“performance_schema”。“events _ waits _ summary _ by _ account _ by _ event _ name”的结构不正确

    解决办法: mysql_upgrade -u root -p


    018 sql_mode没有默认值null

    现象是无法导入存储过程,提示问题中显示的错误。解决方法是修改配置文件中的sql_mode,将其注释掉,重启MySQL。

    # SQL _ mode = NO _ ENGINE _ SUBSTITUTION,STRICT_TRANS_TABLES

    如果在执行存储过程时发现有缺省& # 20540;仍然无法插入数据,这可能是原因。这时就需要直接将mysql.proc表中对应存储过程的sql_mode修改为NO_ENGINE_SUBSTITUTION。

    详情见此。

    也可以直接连接mysql执行source/path/to/SQL _ file . SQL


    019 mysql安装后没有MySQL数据库

    快跑。安装目录中的/scripts/MySQL _ install _ db

    020 mysql连接本地主机

    安装mysql后只能用localhost做主机连接,不能用其他远程主机连接,纠结了很久(防火墙好像没有限制!),发现mysqld是用端口13306启动的,但是应用服务器的数据库配置是3306,仍然连接成功。为什么?

    原因是mysql使用socket文件连接localhost而不是tcp连接,所以指定的端口无效。下面显示的端口13306将被忽略

    shell>
    mysql --port=13306 --host=localhost 如果需要使用TCP连接,则需要指定--host为不同于localhost,或指定以TCP方式连接。 shell> mysql --port=13306 --host=127.0.0.1 shell> mysql --port=13306 --protocol=TCP

    adminjs.cn是一个以CSS、JavaScript、Vue、HTML为核心的前端开发技术网站。我们致力于为广大前端开发者提供专业、全面、实用的前端开发知识和技术支持。 在本网站中,您可以学习到最新的前端开发技术,了解前端开发的最新趋势和最佳实践。我们提供丰富的教程和案例,让您可以快速掌握前端开发的核心技术和流程。 Adminjs.cn还提供一系列实用的工具和插件,帮助您更加高效地进行前端开发工作。我们提供的工具和插件都经过精心设计和优化,可以帮助您节省时间和精力,提升开发效率。 在Adminjs.cn中,您可以找到您需要的一切前端开发资源,让您成为一名更加优秀的前端开发者。欢迎您加入我们的大家庭,一起探索前端开发的无限可能!