文安做网站shijuewang,泰安网站建设案例,广西核心关键词seo报价,平面设计是干嘛的 主要学什么2019独角兽企业重金招聘Python工程师标准 查看是否有安装数据库 #xff1a;rpm -qa|grep -i mysql 如图已安装#xff1a; 未安装#xff1a; 查看MySQL版本的四种方法 1 在终端下执行 mysql -V 2 在help中查找 mysql --help |grep Distrib 3 在mysql 里查看… 2019独角兽企业重金招聘Python工程师标准 查看是否有安装数据库 rpm -qa|grep -i mysql 如图已安装 未安装 查看MySQL版本的四种方法 1 在终端下执行 mysql -V 2 在help中查找 mysql --help |grep Distrib 3 在mysql 里查看 select version() 4 在mysql 里查看 status mysql -h localhost -u 用戶名 -p密码 //链接数据库 use desk_show; //使用数据库 show tables; //显示数据表 describe desk6_0; //显示表结构 通过rpm查看 查看软件是否安装 首先我们需要查看软件是否已经安装或者说查看安装的软件包名称。如查找是否安装mysql 接着根据 rpm -ql 列出软件包安装的文件 使用 rpm -qal |grep mysql 查看mysql所有安装包的文件存储位置 查找 除了rpm 查询还可以通过yum search 查找对应可以安装的软件包 其他查找方法 除了根据软件包来找文件位置之外最常用的就是通过find查找某个关键字比如mysql所有包含mysql服务的文件路径 Which查找命令 Which命令是通过 PATH环境变量查找可执行文件路径用于查找指向这个命令所在的文件夹 Whereis命令和find类似不过不同的是whereis是通过本地架构好的数据库索引查找会比较快。如果没有更新到数据库里面的文件或命令则无法查找到信息 mysql其他命令 show databases; 显示数据库 create database name; 创建数据库 use databasename; 选择数据库 执行命令source /root/20151010.sql drop database name 直接删除数据库不提醒 show tables; 显示表 describe tablename; 显示具体的表结构 select 中加上distinct去除重复字段 mysqladmin drop databasename 删除数据库前有提示。 显示当前mysql版本和当前日期 select version(),current_date; root密码管理 设置root用户的密码 mysqladmin -uroot password password 修改root用户的密码 mysqladmin -uroot -p password password 数据库表管理 进入mysql mysql -h hostname -uroot -p 创建数据库 mysql create database location 导入数据结构 mysql -uroot -p location ./location.sql 查看数据库 mysql show databases; 进入某个库 mysql use location; 查看表信息 mysql show tables; 查看表结构 mysql desc Contact; 改表名 mysql rename table Contact to Contact_new 删除库 mysql drop database location 删除表 mysql drop table Contact 授权部分 建立用户并授权 mysql grant all on location.* to gk102010.1.11.71 identified by gk1020 取消授权 mysql revoke all on location.* from gk102010.1.11.71 刷新权限 mysql flush privileges 操作语句 查询 mysql select * from Contact mysql select count(*) from Contact 修改 mysql update Contact set RegTime‘2008-01-01 000000’ where id1 mysql update Contact set RegTime‘2008-01-01 000000’,CID1 where id1 插入 mysql insert into Contact values(,…) mysql insert into Contact(ID,CID,Contact) values(,…) 删除 mysql delete from Contact where id1 备份数据库location mysqldump -uroot -p -l location ./location.sql 备份某个表 mysqldump -uroot -p -l --database location --table Contact ./contact.sql 导出数据库location的数据结构 mysqldump -d -uroot -p location ./location.sql 恢复数据库mysql -uroot -p location location.sql 备份数据文件和sql文件分离mysqldump -uroot -p location contact -T backup/ 导出数据 select * from contact into outfile contact.txt; 恢复sql文件cat contact.sql | mysql -uroot -p location 导入数据要跟绝对路径 mysqlimport -uroot -p zhang /usr/local/mysql/var/backup/contact.txt 复制表 复制表Contact为Contact_bak mysql create table Contact_bak as select * from Contact 复制表Contact的结构 mysql create table Contact_bak as select * from Contact where 12 查看正在执行的任务 mysql show processlist kill正在执行的任务 mysqladmin -uroot -p kill process_id 查看表状态mysql check table Contact or mysqlcheck -uroot -p -c location Contact 修复表 mysql repair table Contact or mysqlcheck -uroot -p -r location Contact 优化表 mysql optimize table Contact or mysqlcheck -uroot -p -o location Contact MySQL mysqldump 导入/导出 结构数据存储过程函数事件触发器 ———————————————-库操作———————————————- 1.①导出一个库结构 mysqldump -d dbname -u root -p xxx.sql ②导出多个库结构 mysqldump -d -B dbname1 dbname2 -u root -p xxx.sql 2.①导出一个库数据 mysqldump -t dbname -u root -p xxx.sql ②导出多个库数据 mysqldump -t -B dbname1 dbname2 -u root -p xxx.sql 3.①导出一个库结构以及数据 mysqldump dbname1 -u root -p xxx.sql ②导出多个库结构以及数据 mysqldump -B dbname1 dbname2 -u root -p xxx.sql ———————————————-表操作———————————————- 4.①导出一个表结构 mysqldump -d dbname1 tablename1 -u root -p xxx.sql ②导出多个表结构 mysqldump -d -B dbname1 --tables tablename1 tablename2 -u root -p xxx.sql 5.①导出一个表数据 mysqldump -t dbname1 tablename1 -u root -p xxx.sql ②导出多个表数据 mysqldump -d -B dbname1 --tables tablename1 tablename2 -u root -p xxx.sql 6.①导出一个表结构以及数据 mysqldump dbname1 tablename1 -u root -p xxx.sql ②导出多个表结构以及数据 mysqldump -B dbname1 --tables tablename1 tablename2 -u root -p xxx.sql ————————————–存储过程函数操作————————————- 7.只导出存储过程和函数(不导出结构和数据要同时导出结构的话需要同时使用-d) mysqldump -R -ndt dbname1 -u root -p xxx.sql ———————————————-事件操作———————————————- 8.只导出事件 mysqldump -E -ndt dbname1 -u root -p xxx.sql —————————————–触发器操作——————————————– 9.不导出触发器触发器是默认导出的–triggers使用–skip-triggers屏蔽导出触发器 mysqldump --skip-triggers dbname1 -u root -p xxx.sql ———————————————————————————————— 10.导入 mysql -u root -p use game; source xxx.sql ———————————————————————————————— 总结一下 -d 结构(--no-data:不导出任何数据只导出数据库表结构) -t 数据(--no-create-info:只导出数据而不添加CREATE TABLE 语句) -n (--no-create-db:只导出数据而不添加CREATE DATABASE 语句 -R (--routines:导出存储过程以及自定义函数) -E (--events:导出事件) --triggers (默认导出触发器使用--skip-triggers屏蔽导出) -B (--databases:导出数据库列表单个库时可省略 --tables 表列表单个表时可省略 ①同时导出结构以及数据时可同时省略-d和-t ②同时 不 导出结构和数据可使用-ntd ③只导出存储过程和函数可使用-R -ntd ④导出所有(结构数据存储过程函数事件触发器)使用-R -E(相当于①省略了-d -t;触发器默认导出) ⑤只导出结构函数事件触发器使用 -R -E -d PS:如果可以使用相关工具比如官方的MySQL Workbench则导入导出都是极为方便的如下图。当然为了安全性一般情况下都是屏蔽对外操作权限所以需要使用命令的情况更多些 导入遇到问题 ERROR 1153 (08S01): Got a packet bigger than max_allowed_packet bytes 使用Navicat For Mysql备份建新数据库的时候表导入不了查看日志有脚本报错原来是文件大于16M所致 报错信息如下ERROR 1153 (08S01): Got a packet bigger than max_allowed_packet bytes。 于是调整配置文件 /etc/my.cnf 修改mysql的最大允许包大小 在[mysqld]部分(不在这部分没用)添加一句 max_allowed_packet50M 重启mysql服务就可以了。 重启命令如下 一、启动方式 1、使用 service 启动service mysqld start 2、使用 mysqld 脚本启动/etc/inint.d/mysqld start 3、使用 safe_mysqld 启动safe_mysqld 二、停止 1、使用 service 启动service mysqld stop 2、使用 mysqld 脚本启动/etc/inint.d/mysqld stop 3、mysqladmin shutdown 三、重启 1、使用 service 启动service mysqld restart 2、使用 mysqld 脚本启动/etc/inint.d/mysqld restart 迁移服务器要把旧服务器上的mysql数据复制到新服务器的mysql上。 我先是把旧服务器的数据库用mysqldump复制了一份然后想导入到新服务器用命令导入结果提示 网上说的方案我在命令行加上--max_allowed_packet128M mysql --max_allowed_packet128M -u user -ppass database database.sql 结果还是提示 Got a packet bigger than max_allowed_packet bytes 然后我又尝试用MysqlWorkBench客户端导入还是提示 Got a packet bigger than max_allowed_packet bytes 。 实在太奇怪了明明这个.sql文件只有82K啊 解决方案 mysql -u root -p -e set global net_buffer_length1000000; set global max_allowed_packet1000000000; 然后重启 mysqld 再正常导入就可以了…… 转载于:https://my.oschina.net/u/3482619/blog/1613914