MySQL日常管理

查看数据库服务器的版本

select version();

创建数据库

create database dbname character_set=utf8 collate=utf8_general_ci

删除数据库

drop database dbname;

选择使用的数据库

mysql>use dbname;

察看数据库中存在的表名

mysql>show tables;

mysql>show tables from schema_name;

创建数据库表

create table tbname (column_name column_type contraints,......)

mysql中的表,是以文件的形式存储在文件夹下的。

/var/lib/mysql/表名.frm

创建表时,可以为每个字段指定不同的字符集和collation(排序规则)

察看创建表的ddl语句

show create table tbname \G;

删除表

drop table tbname;

修改表

alter table tbname modify column_name newtype;

alter table tbname add column_name column_type;

alter table tbname drop column colname;

alter table tbname change col_name_old col_name_new;

alter table tbname add col_name col_type after col_name2;

alter table tbname add col_name col_type before col_name2;

alter table tbname modify age init(3) first;

alter table tbname rename tbname_new;

收回insert权限

grant select, insert on test.* to ‘uname‘@‘localhost‘ identified by ‘pwd‘;

revoke insert on test.* from ‘uname‘@‘localhost‘;

察看系统变量

show variables like ‘time_zone‘;

修改mysql的时区

set time_zone=‘+9:00‘;

数据类型

如果表示年月日:date

年月日时分秒   :datetime

时分秒             :  time

系统时间          :timestamp

只表示年          :year

MySQL的客户端工具

1.        mysql

没有进入mysql的客户端程序时,可以使用下面的方式执行sql文。

mysq < xxx.sql   (初始化参数可以在c:/windows/my.ini里进行配置)

使用重定向的方式,当sql出错时会中断下面的执行。为了继续执行文件中 后面的内容。可以通过添加force选项来实现。

mysql --force < xxxx.sql

my.ini

----------------------

[client]

user=root

password=xxxxx

进入mysql的客户端后,可以执行在.sql文件的内容。如果sql中有错误的内容需要当发生错误的时候终止下面内容的执行.则启动mysql客户端的时候加上下面的参数。mysql --abort-source-on-error

mysql>source xxxx.sql;

mysql -e "show databases"; (不用登陆,直接访问)

离开mysql客户端:exit quit \q

改变数据库:use dbname  |  \u dbname (注意后面没有任何符号)

1.        mysqladmin

mysqladmin create dbname

mysqladmin drop dbname

mysqladmin extended-status

mysqladmin password pwd

mysqladmin ping --p --host=xxx.xxx.xxx.xx

mysqladmin status --sleep=1 --count=2

mysqladmin status --debug-info

字符集的设定

http://www.nowamagic.net/librarys/veda/detail/138

常见问题:

ERROR 1366 (HY000): Incorrect string value

保证数据库字符集和建表的字符集一样,并支持输入的字符.

数据库级别指定字符集

在my.cnf文件中进行设点字符集,并且在建数据库和表时保持一致。

my.cnf中设定以下几个属性值就好了。


[client]

default-character-set=utf8

[mysql]

default-character-set=utf8

[mysqld]

character_set_server=utf8

character_set_filesystem=utf8

通过设定系统变量来设定默认的字符集。

set character_set_server=utf8

set collation_server=utf8_general_bi

个别数据库指定字符集

创建数据库的时候指定字符集和collation,这样创建表的时候,如果不指定,就用创建数据库指定的字符集和collation来创建表。

show variables 和 set 命令,默认是session级别的命令。

show session variables

show global variables

set global xxx=yyy

set @@global xxx=yyy

set session xxx=yyy

set @@session xxx=yyy

1)查看默认的字符集

SHOW VARIABLES LIKE ‘character%‘

SHOW VARIABLES LIKE ‘collation%‘

2)修改字符集

2.1>在服务器级别修改字符集 (修改my.cnf文件或者通过命令行进行设点)

2.2>在数据库的级别修改字符集(创建数据库的时候指定)

set global | session character_set_server=utf8

使用set命令设定的变量,当数据库重新启动后就失效了。

SHOW VARIABLES LIKE ‘character%‘

SHOW VARIABLES LIKE ‘collation%‘

Set character_set_system=utf8  (always set this value, because mysql server default)

set character_set_server=utf8

set character_set_results=utf8

set character_set_database=utf8

set character_set_connection=utf8     当前connect传输的字符集

set character_set_client=utf8           客户端使用的字符集的设定

set character_set_results=utf8

set collation_connection=utf8_general_ci

set collation_database=utf8_general_ci

set collation_server=utf8_general_ci

SHOW VARIABLES LIKE ‘character%‘

SHOW VARIABLES LIKE ‘collation%‘

Set character_set_system=utf8  (always set this value, because mysql server default)

set character_set_server=utf8

set character_set_results=utf8

set character_set_database=utf8

set character_set_connection=utf8     当前connect传输的字符集

set character_set_client=utf8           客户端使用的字符集的设定

set character_set_results=utf8

set collation_connection=utf8_general_ci

set collation_database=utf8_general_ci

set collation_server=utf8_general_ci

如果客户端使用的是ASCII连接到数据库,但想把所有的statement转化为utf8的行式,

这样character_set_client=ASCII

character_set_connection=utf8

character_set_result:返回给客户端的字符集结果

通常情况下,character_set_client和character_set_result应该设成一致的。

SELECT collation_name, is_default FROM information_schema.collations WHERE character_set_name = ‘UTF8‘;

时间: 2024-10-26 21:02:30

MySQL日常管理的相关文章

mysql 常见管理操作

一:mysql用户管理 MYSQL数据库默认只有一个root用户 mysql将用户信息保存在mysql数据库user表中 创建一个新用户:CREATE USER 用户名 IDENTIFIED BY '密码';  #新用户创建后不能登录,因为没有设置权限 mysql> create user xj identified by '654321'; Query OK, 0 rows affected (0.00 sec) mysql> select user,host,password from u

KVM虚拟机的安装和日常管理

公司为了节约成本,需要把一部分业务迁到虚拟化平台上,今天把虚拟机装了出来,记一下笔记 1.物理机的系统安装(硬盘为300G+300G): centos6.5 64位,不安装桌面环境,默认运行级别为3 分区: /boot 128M swap 8G / 20G /data1  第一块硬盘剩余空间 /data2  第二块硬盘全部空间 采用最小化安装+以下软件包: BaseSystem -- Base Development-- Development tools 要配置好dns 确定系统时间与北京时间

mysql维护管理的几点小技巧(自我总结)

一.mysql数据库用户密码修改方法 (1).在知道mysql数据库root用户密码条件下修改root用户密码wxsemico方法一:[[email protected] ~]# mysql -u root -pEnter password: 输入root密码mysql> show databases;mysql> use mysql;mysql> update user set password=password('wxsemico') where user='root';mysql&

linux日常管理常用命令--w

linux日常管理常用命令--w 命令:w(linux管理员最常用的命令) [[email protected] ~]# w 14:45:41 up 2 min,  2 users,  load average: 0.10, 0.10, 0.04 USER     TTY      FROM              [email protected]   IDLE   JCPU   PCPU WHAT root     tty1     -                14:44   54.

【Ionic+AngularJS 开发】之『个人日常管理』App(一)

写在前面的话 过去一年自己接触了不少手机前端开发,得益于现在手机性能的提升和4G普及,感觉使用混合技术开发手机App已经可以满足越来越多的应用场景了.新年伊始,对自己2016年所学知识做一个阶段性总结,记录一个自制的"小而萌"Hybrid App开发历程,共勉! [扩展阅读] 企业移动应用开发 混合开发成香饽饽 2016年JavaScript领域中最受欢迎的"明星"们 Hybrid APP混合开发的一些经验和总结 App预览 (*模糊化的个人数据) 简介 个人日常管

MySQL基本管理和应用

# yum install mysql-server # /etc/init.d/mysqld startInitializing MySQL database: Installing MySQL system tables...OKFilling help tables...OK To start mysqld at boot time you have to copysupport-files/mysql.server to the right place for your system P

Linux命令:MySQL系列之十一--MySQL日志管理

MySQL日志管理 SHOW GLOBAL VARIABLES LIKE '%log%':查看关于log的全局变量 一.日志分类 1.错误日志   2.一般查询日志   3.慢查询日志 4.二进制日志  5.中继日志   6.事务日志   7.滚动日志 二.日志详解 1.错误日志 说明:在对应的数据目录中,以主机名+.err命名的文件,错误日志记录的信息类型: 记录了服务器运行中产生的错误信息 记录了服务在启动和停止是所产生的信息 在从服务器上如果启动了复制进程的时候,复制进程的信息也会被记录

编译安装Mysql与管理(十四)

[教程主题]:编译安装Mysql与管理 [课程录制]: 创E [主要内容] [1]什么是Mysql MyQL是一个开放源码的小型关系型数据库管理系统,开发者为瑞典MySQL AB公司.目前MySQL被广泛地应用在Internet上的中小型网站中.由于其体积小.速度快.总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库. [2]安装Mysql 一.安装简介 用户名:mysql安装目录:/usr/local/mysql-5.5数据库目录:/

第一阶段考试:实战Linux系统日常管理

1. [项目名称] 实战Linux系统日常管理 [项目说明] 1.安装部署rhel系统,组建RAID磁盘阵列. 2.安装nginx 通过脚本编写 nginx服务服务启动脚本 [项目考核技能点] 1.安装部署rhel系统,网络设置. 2.shell脚本的基本用法 3. nginx的安装 4.整个方案中要包括:系统的安装,磁盘分区格式化,shell脚本的应用等相关内容. 项目环境可以参考如下: 1.安装两台rhel主机 对应主机名与IP :xuegod63.cn 192.168.1.63 xuego