新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
安装和使用mariadb
创新互联公司是一家专注网站建设、网络营销策划、小程序制作、电子商务建设、网络推广、移动互联开发、研究、服务为一体的技术型公司。公司成立10余年以来,已经为超过千家成都除甲醛各业的企业公司提供互联网服务。现在,服务的超过千家客户与我们一路同行,见证我们的成长;未来,我们一起分享成功的喜悦。
centos 7 直接提供
centos 6
通用二进制安装过程
1、准备数据目录
以/mydata/data为例
2、配置mariadb
#groupadd -r -g 200 MySQL
#useradd -r -g 200 -u 200 mysql
#tar xf mariadb-VERSION-linux.tar.gz -C /usr/local
#ln -s mariadb-VERSION-linux mysql
#cd /usr/local/mysql
#chown root.mysql ./*
#cripts/mysql_install_db --user=mysql --datadir=/mydata/data
#cp support-files/mysql.server /etc/rc.d/init.d/mysqld
#chkconfig --add mysqld
3、准备配置文件
配置格式:类ini格式,各程序均通过单个配置文件提供配置信息:
[prog_name]
配置文件查找次序:
/etc/my.cnf -->/etc/mysql/my.cnf --> --default-extra-file=/PATH/TO/CONF_FILE -->~/.my.cnf
#mkdir /etc/mysql
#cp support-files/my-large.cnf /etc/mysql/my.cnf
添加三个配置
datadir = /mydata/data
innodb_file_per_table = on
skip_name_resolve = on
4、启动服务
service mysqld start
5、数据库安全初始化
mysql_secure_installation
6、mariadb的程序组成
C:
mysql
-uUSERNAME
-hHOST
-pPASSWORD
mysqldump,mysqladmin...
S:
mysqld_safe
mysqld
mysqld_multi
7、服务监听的两种socket地址:
ip socket:监听在tcp的3306端口,支持远程通信;
unix sock:监听在sock文件上(/tmp/mysql.sock,/var/lib/mysql/mysql.sock),仅支持本地通信;
server:localhost,127.0.0.1
8、命令:
客户端命令:本地执行
mysql>help
每个命令都有完×××式和简写形式:
status --> \s
服务端命令:通过mysql协议发往发往服务器并取回结果
每个命令都必须有命令结束符号,默认为分号
SQL语句:
DDL:Data Defination Language
create,drop,alert
DML:Data Manipulation Language
insert,delete,update,select
grant,revoke
查看数据可支持的字符集:
mysql>show character set;
查看排序规则:
mysql>show collation;
查看支持的引擎:
show engines;
创建(删除)数据库:
CREATE DATABASE [IF NOT EXISTS] 'DB_NAME';
DROP DATABASE [IF EXISTS] 'DB_NAME';
mysql>CREATE DATABASE IF NOT EXISTS testdb;
创建(删除)表:
CREATE TABLE [IF NOT EXISTS] tb_name(col1 datatype 修饰符,col2 datatype 修饰符,col3 datatype 修饰符) ENGINE='';
DROP TABLE [IF EXISTS] tb_name;
mysql>CREATE TABLE tbl1 (id INT NOT NULL,name VARCHAR(100) NOT NULL,age TINYINT);
查看表:
mysql>SHOW tb_name [from db_name];
查看表结构:
mysql>DESC [db_name.]tb_name;
数据类型:
字符型:
定长字符型:CHAR(#),BINARY(#)
变长字符型:VARCHAR(#),VARBINARY(#)
数值类型:
精确数值型:
整型:int
tinyint:1byte
smallint:2byte
mediumint:3byte
int:4byte
bigint:8byte
十进制:decimal
近似数值型:
单精度浮点型:
float
双精度浮点型:
double
修饰符:
所有类型都适用
NOT NULL:非空约束
DEFAULT VALUE:设定默认值
PRIMARY KEY
UNIQUE KEY
数值型适用:
UNSIGNED 无符号型
AUTO_INCREMENT 自增长型
mysql>CREATE DATABASE testdb;
mysql>USE testdb;
mysql>CREATE TABLE students1 (id int UNSIGNED NOT NULL PRIMARY KEY, name VARCHAR(20) NOT NULL, age tinyint UNSIGNED);
mysql>DESC students;
mysql>CREATE TABLE students2 (id int UNSIGNED NOT NULL, name VARCHAR(20) NOT NULL, age tinyint UNSIGNED, PRIMARY KEY(id,name));
mysql>DESC students2;
获取帮助:
mysql>HELP CREATE TABLE;
查看创建表时的命令:
mysql>SHOW CREATE TABLE students2;
查看表状态:
mysql>SHOW TABLE STATUS LIKE 'students2'\G \G-->值竖行显示
ALTER TABLE tb_name
字段:
添加字段:ADD
ADD col1 datatype [FIRST|AFTER col_name];
删除字段:DROP
修改字段:ALTER,CHANGE,MODIFY
CHANGE id sid int UNSIGNED NOT NULL;
字段的添加:
mysql>ALERT TABLE students1 ADD gender ENUM('m','f') AFTER name;
mysql>ALERT TABLE students1 CHANGE id sid int UNSIGNED NOT NULL;
添加索引:
mysql>ALERT TABLE students1 ADD INDEX(age);
查看索引:
mysql>SHOW INDEXES FRON students1;