linux中mariadb基本用法详解(企业级)_sql_19

Posted ygst

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux中mariadb基本用法详解(企业级)_sql_19相关的知识,希望对你有一定的参考价值。

原文链接: linux中mariadb基本用法详解

数据库
表的每一个列名字的头 叫做字段
是高级的exel表格软件

数据库种类
sqlserver sqllite db2
oracle > mysql 比较多

其中mysql 分支中有一个 mariadb

yum install mariadb-server -y
systemctl start mariadb

linux中mariadb基本用法详解(企业级)_sql

mysql_secure_installation
设定密码

linux中mariadb基本用法详解(企业级)_sql_02

mysql_secure_installation ##数据库安全初始化
/usr/bin/mysql_secure_installation: line 379: find_mysql_client: command not found

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we\'ll need the current
password for the root user. If you\'ve just installed MariaDB, and
you haven\'t set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none): ##数据库原始密码(默认没有直接回车)
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

Set root password? [Y/n] ##是否要设定数据库超级用户密码
New password: ##输入要设定的超级用户密码
Re-enter new password: ##重复输入
Password updated successfully!
Reloading privilege tables..
... Success!

By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] ##是否删除匿名用户访问权限
... Success!

Normally, root should only be allowed to connect from \'localhost\'. This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] ##是否禁止超级用户通过远程登陆
... Success!

By default, MariaDB comes with a database named \'test\' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] ##刷新数据库

  • Dropping test database...
    ... Success!
  • Removing privileges on test database...
    ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n]
... Success!

Cleaning up...

All done! If you\'ve completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!

mysql -uroot -p
登陆

linux中mariadb基本用法详解(企业级)_mysql_03

去掉端口
netstat -antlupe |grep mysql

linux中mariadb基本用法详解(企业级)_mysql_04

vim /etc/my.cnf.d

skip-networking=1

linux中mariadb基本用法详解(企业级)_mysql_05

systemctl restart mariadb.service

就去掉了端口

数据库管理

mysql -uroot -p

show databases; (不区分大小写)

linux中mariadb基本用法详解(企业级)_mysql_06

use mysql; 进去库 一定要用分号结尾

linux中mariadb基本用法详解(企业级)_linux_07

show tables; 看到里面的东西

linux中mariadb基本用法详解(企业级)_linux_08

select * from user 查看user库中的所有东西

linux中mariadb基本用法详解(企业级)_sql_09

select Host,User,Password from user 选择字段查看部分内容

create database westos; 建立库

linux中mariadb基本用法详解(企业级)_sql_10

mysql -uroot -p

show databases ;

linux中mariadb基本用法详解(企业级)_mysql_11

use westos ;

linux中mariadb基本用法详解(企业级)_sql_12

create table linux (

-> username varchar(10) not null, 长度十个字节不能为空

-> password varchar(50) not null

-> );

这样就可以

desc linux; 查看表的结构

insert into linux values (\'lee\',\'123\');

select * from linux 就可以看到了

linux中mariadb基本用法详解(企业级)_linux_13

linux中mariadb基本用法详解(企业级)_mysql_14

这样就可以插入数据了

修改

alter table linux rename userdata ;

linux中mariadb基本用法详解(企业级)_linux_15

将表linux改名为 userdata

表中继续增加字段

alter table linux add age varchar(4);

linux中mariadb基本用法详解(企业级)_linux_16

默认在表中最后添加

alter table linux drop age;

linux中mariadb基本用法详解(企业级)_sql_17

删除 age

alter table linux add age varchar(4) after username ;

添加到 username 之后 不是最后一列

linux中mariadb基本用法详解(企业级)_linux_18

update linux set age=\'20\' ;

都会改称 20岁

linux中mariadb基本用法详解(企业级)_sql_19

©著作权归作者所有:来自51CTO博客作者mb63774a171e569的原创作品,请联系作者获取转载授权,否则将追究法律责任
linux中mariadb基本用法详解(企业级)
https://blog.51cto.com/u_15883840/5870005

Linux安装配置MariaDB数据库全程详解

MariaDB在很多方面强于MySQL,在Linux下如何安装MariaDB数据库成为大家比较头疼的一个问题,下面用实例为大家讲解下

MariaDB是采用Maria存储引擎的MySQL分支版本,在很多方面强于MySQL,那么在Linux下如何安装MariaDB数据库呢?下面小编就给大家介绍下Linux安装配置MariaDB数据库的方法。

  说明:

  操作系统:CentOS 5.10 32位

  MariaDB版本:mariadb-5.5.33a

  MariaDB数据库存放目录:/data/mysql

  准备篇:

  一、配置好IP、DNS 、网关,确保使用远程连接工具能够连接服务器,服务器yum命令可以正常使用

  二、配置防火墙,开启3306端口

  vi /etc/sysconfig/iptables #编辑

  -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT #允许3306端口通过防火墙

  特别提示:很多网友把这两条规则添加到防火墙配置的最后一行,导致防火墙启动失败,正确的应该是添加到默认的22端口这条规则的下面

  添加好之后防火墙规则如下所示:

  **********************************************************************************

  # Firewall configuration written by system-config-securitylevel

  # Manual customization of this file is not recommended.

  *filter

  :INPUT ACCEPT [0:0]

  :FORWARD ACCEPT [0:0]

  :OUTPUT ACCEPT [0:0]

  :RH-Firewall-1-INPUT - [0:0]

  -A INPUT -j RH-Firewall-1-INPUT

  -A FORWARD -j RH-Firewall-1-INPUT

  -A RH-Firewall-1-INPUT -i lo -j ACCEPT

  -A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT

  -A RH-Firewall-1-INPUT -p 50 -j ACCEPT

  -A RH-Firewall-1-INPUT -p 51 -j ACCEPT

  -A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT

  -A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT

  -A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT

  -A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

  -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

  -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

  -A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited

  COMMIT

  **********************************************************************************

  /etc/init.d/iptables restart #最后重启防火墙使配置生效

  三、关闭SELINUX

  vi /etc/selinux/config

  #SELINUX=enforcing #注释掉

  #SELINUXTYPE=targeted #注释掉

  SELINUX=disabled #增加

  :wq! #保存退出

  shutdown -r now #重启系统

  四 、系统约定

  MariaDB安装包存放位置:/usr/local/src

  MariaDB编译安装位置:/usr/local/mysql

  五、下载软件包

  1、下载MariaDB

  http://mirrors.scie.in/mariadb/mariadb-5.5.33a/kvm-tarbake-jaunty-x86/mariadb-5.5.33a.tar.gz

  2、下载cmake(MariaDB编译工具)

  http://www.cmake.org/files/v2.8/cmake-2.8.12.1.tar.gz

  下载以上两个软件,并上传到/usr/local/src目录

  六、安装编译工具及库文件(使用CentOS yum命令安装,安装的比较多,方便以后编译安装php、nginx等)

  yum install make apr* autoconf automake curl curl-devel gcc gcc-c++ gtk+-devel zlib-devel openssl openssl-devel pcre-devel gd kernel keyutils patch perl kernel-headers compat* cpp glibc libgomp libstdc++-devel keyutils-libs-devel libsepol-devel libselinux-devel krb5-devel libXpm* freetype freetype-devel freetype* fontconfig fontconfig-devel libjpeg* libpng* php-common php-gd gettext gettext-devel ncurses* libtool* libxml2 libxml2-devel patch policycoreutils bison

  安装篇

  一、安装cmake

  cd /usr/local/src

  tar zxvf cmake-2.8.12.1.tar.gz

  cd cmake-2.8.12.1

  。/configure

  make #编译

  make install #安装

  二、安装MariaDB

  groupadd mysql #添加MariaDB数据库安装用户组mysql

  useradd -g mysql mysql -s /bin/false #创建用户mysql并加入到mysql组,不允许mysql用户直接登录系统

  mkdir -p /data/mysql #创建MariaDB数据库存放目录

  chown -R mysql:mysql /data/mysql #设置MariaDB数据库目录权限

  mkdir -p /usr/local/mysql #创建MariaDB安装目录

  cd /usr/local/src

  tar zxvf mariadb-5.5.33a.tar.gz #解压

  cd mariadb-5.5.33a #进入安装目录

  cmake 。 -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc

  #配置

  make #编译

  make install #安装

  cd /usr/local/mysql

  cp 。/support-files/my-huge.cnf /etc/my.cnf #拷贝配置文件(注意:如果/etc目录下面默认有一个my.cnf,直接覆盖即可)

  vi /etc/my.cnf #编辑配置文件,在 [mysqld] 部分增加

  datadir = /data/mysql #添加MariaDB数据库路径

  。/scripts/mysql_install_db --user=mysql #生成MariaDB系统数据库

  cp 。/support-files/mysql.server /etc/rc.d/init.d/mysqld #把MariaDB加入系统启动

  chmod 755 /etc/init.d/mysqld #增加执行权限

  chkconfig mysqld on #加入开机启动

  vi /etc/rc.d/init.d/mysqld #编辑

  basedir = /usr/local/mysql #MariaDB程序安装路径

  datadir = /data/mysql #MariaDB数据库存放目录

  service mysqld start #启动

  vi /etc/profile #把MariaDB服务加入系统环境变量:在最后添加下面这一行

  export PATH=$PATH:/usr/local/mysql/bin

  下面这两行把MariaDB的库文件链接到系统默认的位置,这样你在编译类似PHP等软件时可以不用指定MariaDB的库文件地址。

  ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql

  ln -s /usr/local/mysql/include/mysql /usr/include/mysql

  shutdown -r now #需要重启系统,等待系统重新启动之后继续在终端命令行下面操作

  mysql_secure_installation #设置MariaDB数据库root账号密码

  根据提示按Y 回车输入2次密码

  或者直接修改密码/usr/local/mysql/bin/mysqladmin -u root -p password “123456” #修改密码

  service mysqld restart #重启

  mysql -u root -p #输入上面设置的root密码登录到mariadb控制台,如下图所示:

技术分享

  到此,MariaDB数据库安装完成!

  上面就是Linux安装配置MariaDB数据库的步骤的介绍了,基于MariaDB数据库的众多优点,相信还是很多人会选择使用MariaDB数据库的,对于不知如何安装MariaDB数据库的朋友来说,希望本文的介绍对你有所帮助。



linux下快速安装MariaDB 

MariaDB 是 一个采用 Maria 存储引擎的  MySQL  分支版本,是由原来 MySQL 的作者 Michael Widenius 创办的公司所开发 的免费开源的数据库服务器  

本文介绍了在linxu下一个简单的安装 方法(在OpenSuse下测试成功): 
下载页面: https://downloads.mariadb.org/mariadb/5.5.34/ 
# tar zxvf  mariadb-5.5.31-linux-x86_64.tar.gz   
# mv mariadb-5.5.31-linux-x86_64 /usr/local/mysql (必需这样,很多脚本或可执行程序都会直接访问这个目录)
# groupadd mysql                     增加 mysql 属组 
# useradd -g mysql mysql     增加 mysql 用户 并归于mysql 属组 
# chown mysql:mysql -Rf  /usr/local/mysql     设置 mysql 目录的用户及用户组归属。 
# chmod +x -Rf /usr/local/mysql    赐予可执行权限 
# cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf     复制默认mysql配置 文件到/etc 目录 
# /usr/local/mysql/scripts/mysql_install_db --user=mysql   初始化数据  
# cp  /usr/local/mysql/support-files/mysql.server    /etc/init.d/mysql   复制mysql服务程序 系统 目录 
# chkconfig  mysql on   添加mysql 至系统服务并设置为开机启动 

# service  mysql  start  启动mysql
#vim /etc/profile   编辑profile,将mysql的可执行路径加入系统PATH
export PATH=/usr/local/mysql/bin:$PATH 
#source /etc/profile  使PATH生效。
#mysqladmin -u root password ‘yourrootpassword‘ 设定root账号及密码
#mysql -uroot -p  使用root用户登录mysql
[none]>use mysql  切换至mysql数据库。
[mysql]>select user,host,password from user; --查看系统权限
[mysql]>drop user ‘‘@‘localhost‘; --删除不安全的账户
[mysql]>drop user [email protected]‘::1‘;
[mysql]>drop user [email protected];
。。。
[mysql]>select user,host,password from user; --再次查看系统权限,确保不安全的账户均被删除。

[mysql]>flush privileges;  --刷新权限

1)修改字符集为UTF8
#vi /etc/my.cnf
在[client]下面添加 default-character-set = utf8
[mysqld]下面添加 character_set_server = utf8
修改完重启:#service  mysql  restart 

2)增加错误日志
#vi /etc/my.cnf
[mysqld]下面添加:
log-error = /usr/local/mysql/log/error.log
general-log-file = /usr/local/mysql/log/mysql.log
修改完重启:#service  mysql  restart 

3) 设置为不区分大小写,linux下默认会区分大小写。
#vi /etc/my.cnf
[mysqld]下面添加:
lower_case_table_name=1
修改完重启:#service  mysql  restart 
=========================================================================================================================================
以上是转载的,适合天linux没使用systemctl之前的系统,下面是使用systemctl系统的安装方法。同时引用mariadb官方的安装方法。
https://mariadb.com/kb/en/mariadb/installing-mariadb-binary-tarballs/
这里只引用root安装的方法,因为这种方法最常用,其他的可以通过以上链接去学习


   groupadd mysql
    useradd -g mysql mysql
    cd /usr/local
    tar -zxvpf /path-to/mariadb-VERSION-OS.tar.gz
    ln -s mariadb-VERSION-OS mysql
    cd mysql
    ./scripts/mysql_install_db --user=mysql
    chown -R root .
    chgrp -R root .
    chown -R mysql data
    chgrp -R mysql data
   cp support-files/mysql.server /etc/init.d/mysql.server

在创建systemctl要用到的启动文件 /etc/systemd/system/mysql.service
[Unit]
Description=MySQL Server
After=network.target

[Service]
Type=forking
ExecStart=/etc/init.d/mysql.server start
ExecStop=/etc/init.d/mysql.server stop

[Install]
WantedBy=multi-user.target

#systemctl start mysql.service 命令就可以启动mysql了
systemctl可以查看这篇转载的,写得比较清晰。(查看)


开启远程连接:
GRANT ALL PRIVILEGES ON *.* TO ‘root‘@‘%‘ IDENTIFIED BY ‘mypassword‘ WITH GRANT OPTION



以上是关于linux中mariadb基本用法详解(企业级)_sql_19的主要内容,如果未能解决你的问题,请参考以下文章

深度学企业linux awk命令详解与应用(下篇)

深度学企业linux awk命令详解与应用(下篇)

linux 中特殊符号用法详解

Linux安装配置MariaDB数据库全程详解

三十八MariaDB安装Apache安装

strace命令_Linux strace 命令用法详解:跟踪系统调用和信号