mysql数据库系统配置_MySQL数据库系统安装与配置

本文详细介绍了在Linux环境下安装MySQL的过程,包括使用groupadd、useradd、cmake等命令,以及配置文件的设定。接着,文章演示了数据库的创建、表的增删改查操作,授权管理和备份恢复等核心功能。最后,提到了GRANT语句用于用户权限管理和FLUSH PRIVILEGES命令来更新权限。
摘要由CSDN通过智能技术生成

groupadd mysql

useradd -g mysql mysql -s /sbin/nologin

mkdir -p /usr/local/mysql

cmake \

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

-DMYSQL_DATADIR=/home/mysql/ \

-DMYSQL_UNIX_ADDR=/home/mysql/mysql.sock \

-DWITH_MYISAM_STORAGE_ENGINE=1 \

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

-DWITH_ARCHIVE_STORAGE_ENGINE=1 \

-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \

-DENABLED_LOCAL_INFILE=1 \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DEXTRA_CHARSETS=all \

-DWITH_SSL=system \

-DMYSQL_TCP_PORT=3306 \

-DENABLE_DOWNLOADS=1 \

-DWITH_SSL=bundled

在cmake过程中会出现要安装“yum install -y ncurses-devel”这个包

rm CMakeCache.txt

make && make install

chown -R mysql.mysql /usr/local/mysql//这个命令的作用是如果前面已经做过的这个命令,则执行完make && make install 这个命令

之后须要执改/usr/local/目录下的mysql这个目录的属主与属组

export PATH=$PATH:/usr/local/mysql/bin///初始化环境变量

[root@localhost ~]# vi .bash_profile//想开机自动运行编辑.bash_profile这个文件

PATH=$PATH:/usr/local/mysql/bin/ //添加这一行话

cp support-files/my-medium.cnf /etc/my.cnf //建立配置文件

cp support-files/mysql.server /etc/init.d/mysqld//添加系统服务,将mysql.server脚本文件复制到/etc/init.d/目录下,改名为mysqld,然后设置执行权限

chmod 755 /etc/init.d/mysqld

chkconfig --add /etc/init.d/mysqld //添加/etc/init.d/myspld到chkconfig里,用service命令来管理(service mysql)

或直接用chkconfig --add mysqld也是可以添加的

chkconfig mysqld --level 235 on

/usr/local/mysql/scripts/mysql_install_db --user=mysql \//初始化脚本mysql_install_db位于安装目录的scripts文件夹中

--ldata=/var/lib/mysql \

--basedir=/usr/local/mysql --datadir=/home/mysql //指定用户为mysql,链接文件是/var/lib/mysql,基本目录

/usr/local/mysql,数据目录为/home/mysql

ln -s /var/lib/mysql/mysql.sock /home/mysql/mysql.sock //源文件是/var/lib/mysql/mysql.sock,链接

的文件是/home/mysql/mysql.sock

vi /etc/init.d/mysqld

basedir=/usr/local/mysql

datadir=/home/mysql

以上所有的配置完了之后,一定要用“source /root/.bash_profile”这个命令来对初始脚本重新加载,这样用mysql

这个用户就能登录了

service mysqld start

netstat -tnl | grep 3306

#mysql -u root //登录数据库

-------查看命令----------

mysql> show databases;

mysql> use test;

mysql> show tables;

mysql> describe user; //查看表内容(查看user表里的内容)

----------新增命令-----------

mysql>CREATE DATABASE benet;//创建数据库名为benet

mysql>use benet; //进入benet这个数据库

mysql> CREATE TABLE users (user_name CHAR(16) NOT NULL, user_passwd CHAR(48) DEFAULT '', PRIMARY KEY (user_name)); //创建表名为users

注释:“user_name”表示字段1名称(也就是表格的第一行),“char(16)”表示类型,“not null”表示null值不能为空 NO;

“user_passwd”表示字段2名称(也就是表格的第二行),“char(48)”表示类型,“default ''”表示null可以为空 YES;

“primary key(user_name)”表示primary key(主键名)

mysql> INSERT INTO users(user_name,user_passwd) VALUES('zhangsan', PASSWORD('123456')); //在users表中插入内容

mysql> INSERT INTO users VALUES('lisi', PASSWORD('654321')); //password是用户为密码加密的

mysql> insert into users values('sina',password('123abc'));

------------删除命令--------------

mysql> DELETE FROM users WHERE user_name='lisi';

mysql> DROP TABLE users;

mysql> DROP DATABASE benet;

----------更改命令---------

mysql> UPDATE users SET user_passwd=PASSWORD('') WHERE user_name='lisi';

mysql> UPDATE mysql.user SET password=PASSWORD('123456') WHERE user='root';

------------查询命令-----------

mysql> SELECT user,host,password FROM mysql.user WHERE user='';

mysql> select * from users; //查看user表里的所有信息

mysql> select user from users; //查看users表里的user这个用户字段里有哪些

用户

mysql>flush privileges; //刷新授权信息,

mysqladmin -u root -p password '123456' //改的是新密码,要输入的是旧的密码

Enter password: //输入旧密码

[root@localhost ~]# mysql -u root -p //登录

Enter password: //输入之前改的密码123456

---------------授权命令-------------------

mysql> GRANT select ON auth.* TO 'tom'@'localhost' IDENTIFIED BY '123456';//新建tom用户密码设置为123456,对其授权只能查询以auth开头的所有表。

mysql> grant all on benet.* to 'tom'@'localhost'identified by '123';

mysql>flush privileges;

GRANT语句:专门用来设置数据库用户的访问权限。当指定的用户不存在时,GRANT语句将会创建新的用户,否则GRNAT

语句用户修改用户信息。语句格式如下:

GRANT 权限列表 ON 库名.表名 TO ‘用户名’@‘来源地址’【IDENTFIED BY ‘密码’】

mysql> SHOW GRANTS FOR 'dbuser'@'192.168.4.19'; (例如上面的例子:SHOW GRANTS FOR 'tom'@'localhost';,那个“用户名@来源地址”要是一样的)

mysql> REVOKE all ON auth.* FROM 'xiaoqi'@'localhost';

---------------备份与恢复命令------------------

# mysqldump -u root -p --opt --all-databases > all-data.sql //备份所有数据库

# mysqldump -u root -p --database benet > benet.sql //备份auth数据库

# mysqldump -u root -p mysql user > mysql-user.sql //备份mysql的user表

mysql>create database;

# mysql -u root -p test < mysql-user.sql //将备份还原到test数据库中。

例子:

mysqldump -u root -p --database user > user.sql//将数据库中名为user的数据库备份出来(备份user这个数据库)

mysql -u root -p < benet.sql//将备份user数据库名数据库user.sql还原到数据库中

yum install /mnt/Packages/ncurses-devel-5.7-3.20090208.el6.i686.rpm -y

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值