linux mysql
一 数据库安装查看:[root@localhostinfo Mariadb #包组
mariadb-server#服务器端
# yum groupinfo MariaDB-Client#包组
mariadb
rpm -qf /usr/bin/mysql #软件包
mariadb #客户端包
# cat /etc/my.cnf#配置文件
# cat /etc/my.cnf.d/*.cnf#配置文件
# yum groupinstall mariadb mariadb-client#安装包组
# systemctl start mariadb#设置现在启动
# systemctl enable mariadb.service#设置开机启动
# ss -ntl#端口:3306
根据端口查看执行的程序
#ss -ntlp
MariaDB [(none)]> show databases;#查看当前的数据库
MariaDB [(none)]> use test;#切换到test数据库中
MariaDB > show tables; #查看表
MariaDB > use mysql #切换数据库
MariaDB > show tables; #查看数据库中的表
MariaDB >select * from user; #在表中列出所有字段
MariaDB > desc user;#
MariaDB > select host,user,password from user;#显示指定字段
MariaDB > select user(); #查看当前登录用户名
# /usr/bin/mysql_secure_installation#软件包自带的是设置密码工具
Enter current password for root (enter for none):#直接回车开始设置口令
OK, successfully used password, moving on...
Set root password? y#是否设置密码
Remove anonymous users? y#是否删除匿名账号
Disallow root login remotely? n#是否禁止远程root登录
Remove test database and access to it? y#是否删除test数据库
Reload privilege tables now? y#前面操作的权限是否生效
# mysql -uroot -p #指定用户登录,-p密码
MariaDB [(none)]> select host,user,password from mysql.user;#没有切换目录,就应该指定是哪个数据裤中的表(mysql)
C6二进制安装mariadb
1)# mkdir /app/data -p#规划数据存放地方
2)创建系统账号、
# useradd -r -d /app/data -s /sbin/nologin -u mysql
# chown mysql.mysql /app/data
3)解压程序
# tar -xf mariadb-5.5.57-linux-x86_64.tar.gz -C /usr/local/
#cd /usr/local/
# ln -s mariadb-5.5.57-linux-x86_64/ mysql#建个软连接为mysql
# chgrp -R mysql mysql/#运行mysql必须所属组为mysql,因为递归修改所有必须加上/,不然只改了目录。
4)指定数据库路径
# cat /etc/my.cnf#默认在lib下,可以到mysql/support-files中复制模板自己建
datadir=/var/lib/mysql
# cd mysql/support-files/
# ls
my-huge.cnf更大的数据库模板
my-large.cnf大的数据库模板
my-small.cnf小的数据库模板
my-medium.cnf中等的模板
# mkdir /etc/mysql
# cp my-huge.cnf /etc/mysql/my.cnf
# vi /etc/mysql/my.cnf#修改配置文件路径
datadir =/app/data
innodb_file_per_table=on#指创建的列表单独存放
skip_name_resolve=on
5)创建数据库文件
# cd /usr/local/mysql/scripts/ && ls #自定生成数据库文件
# cd ..
# scripts/mysql_install_db --datadir=/app/data --user=mysql#生成数据库指定路径
6)制作服务脚本
# cp support-files/mysql.server /etc/init.d/mysqld
# chkconfig --add mysqld && chkconfig mysqld on
# chkconfig --list mysqld
# touch /var/log/mysqld.log#建日志文件
# chown mysql /var/log/mysqld.log #日志必须有写权限
# service mysqld start#启动服务
7)添加到环境变量
# cd bin/
# vi /etc/profile.d/mysql.sh
export PATH=/usr/local/mysql/bin:$PATH
# . /etc/profile.d/mysql.sh
数据库的运用:
MariaDB [(none)]> show databases;#查看数据库
MariaDB [(none)]> create database dalong; #新建数据库
MariaDB [(none)]> select user(); #查看当期登录用户
MariaDB [(none)]> select host,user,password from mysql.user; #查看可登录的用户列表
# mysql_secure_installation#设置口令
# mysql -uroot -p#用户登录
MariaDB [(none)]> help#查看帮助及命令简写
MariaDB [(none)]> status#查看数据库状态信息
MariaDB [(none)]> select version(); #查看版本信息
二 SQL语句分类:
DDL:数据的定义语言(创建,删除,修改)
DML:数据的操作语言(增 删 改)
DCL:数据的控制语言(指控制权限GRANT赋值权限;REVOKE取消权限)
DQL:数据查询语言
MariaDB [(none)]> use dalong; #切换数据库
添加表
MariaDB > create table student (id int unsigned primary key, name varchar(20) not null ,age tinyint unsigned);
表示在dalong数据库中创建数据,表名为:student;id编号int整数unsigned正数primary key设置文主键,varchar(20)指输入姓名的字符空格长度;not null表示不允许为空,年龄,tinyint 整数unsigned 为正数
MariaDB > desc student; #查表结构
添加特产表:
MariaDB > create table zztechan (id int unsigned primary key,name varchar(20) not null); #添加表.结构
MariaDB > create table bjtechan (id int unsigned primary key,name varchar(20) not null);
MariaDB [(none)]> SHOW INDEXES FROM dalong.student;#查看表的所引,主键自带索引
MariaDB [(none)]>> MariaDB [(none)]> SHOW INDEXES FROM dalong.student;
给表格结构中加,删,改 数据
加
MariaDB [(none)]> use dalong #切换到数据中
MariaDB >insert into student values (1,"mege",20);#添加
MariaDB > select from student;#查看
MariaDB > insert into student(name,id)values('zhao',2); #没有的信息不填,但要指定给那个添加。添加什么,前面的括号的数据和后面小括号的数据一一对应。 没写就是null
添加北京和郑州特产:
MariaDB > insert into bjtechan values(1,'ky');#烤鸭
MariaDB > insert into bjtechan values(2,'dz'); #豆汁
MariaDB >insert into zztechan values(2,'yrt');
MariaDB >insert into zztechan values(1,'hm')
改:
MariaDB > update zztechan set name='mm' where> MariaDB > selectfrom zztechan;
删除:
MariaDB > delete from zztechan where> MariaDB > select * from zztechan;
页:
[1]