新安装的mysql需要密码_在Linux centos上新安装了mysql后,为mysql添加密码

MySQL知识点

一、在Linux centos上新安装了mysql后,为mysql添加密码:

1.安装完成时,可以使用命令service mysqld start开启mysql;

需要注意此时进入mysql是匿名访问的,不能查看名为mysql的数据库,也不能创建新的数据库,否则会报错.mark一下下

2.停止mysql服务:

$ service mysqld stop;

也可以使用kill命令杀掉mysql的守护进程,在此之前你需要先查看一下都有哪些mysql的进程:

$ ps -ef | grep mysql | grep -v grep | awk '{print $2}' | xargs kill -9

3.修改mysql登录设置:

$ vi /etc/my.cnf

在[mysqld]中加入:

skip-grant-tables

例如:

[mysqld]

datadir=/var/lib/mysql

socket=/var/lib/mysql/mysql.sock

skip-grant-tables

保存退出。

4.重启mysqld。

$ service mysqld restart

Stopping mysqld: [ OK ]

Starting mysqld: [ OK ]

5.登录并修改mysql默认账户root的密码:

$ mysql (或者使用/usr/bin/mysql)

Welcome to the MySQL monitor. Commands end with ; or g.

Your MySQL connection id is 3 to server version: 3.23.56

Type 'help;' or 'h' for help. Type 'c' to clear the buffer.

mysql> use mysql;

mysql> UPDATE user SET Password=PASSWORD('Your password') WHERE User='root';

mysql> flush privileges;

mysql> exit;

6.将配置文件中my.cnf修改回来:

用#注释掉skip-grant-tables

7.重启mysqld

$ service mysqld restart

Stopping mysqld: [ OK ]

Starting mysqld: [ OK ]

8.现在即可使用root和密码登录:

$ mysql -uroot -p

二、mysql的启动、停止和重启

1.启动

方法1:使用service启动,需确定是否已将管理做成service,需要到/etc/init.d/目录下确认

# service mysqld start

或者

# /etc/init.d/mysqld start

方法2:手动执行启动命令(/usr/bin下)启动

--可以加一些常用的配置参数例如

--default-file=/etc/my.cnf 读取的代替通用选项文件的选项文件名,如果给出,必须首选该选项,即排在所有参数的最前面

--user=mysql 以用户名user_name或者数字用户user_id运行mysql服务器(用户是指系统登录用户,而不是授权表中的MySQL用户)

--basedir=/usr MySQL安装路径

--datadir=/var/lib/mysql 数据目录的路径

--socket=/var/lib/mysql/mysql.sock用于进程间通信的sock文件

--pid-file=/var/run/mysqld/mysqld.pid 进程id的文件路径

--log_error=/var/log/mysqld.log 错误日志写入给定文件

--port=port_num 用来侦听TCP/IP连接的端口号,端口号必须为1024或者更大值,除非MySQL以root系统用户运行。

# /usr/bin/mysqld_safe &

注明:查看mysql相关信息

# ps auxwf | grep mysql | grep -v grep

返回:

root 3426 1 0 03:06 pts/0 00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --socket=/var/lib/mysql/mysql.sock --pid-file=/var/run/mysqld/mysqld.pid --basedir=/usr --user=mysql

mysql 3528 3426 0 03:06 pts/0 00:00:00 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/lib/mysql/mysql.sock

/usr/bin/mysqld_safe是MySQL的运行路径

/var/lib/mysql 是MySQL数据库文件存放的路径

/usr/libexec/mysql 是MySQL的安装路径

2.停止

方法1:使用service停止

# service mysqld stop

或者

# /etc/init.d/mysqld stop

方法2:使用mysqladmin命令停止

# /usr/bin/mysqladmin shutdown -uroot -ppassword

3.重启

# service mysqld restart

# /etc/init.d/mysqld restart

4.查看MySQL版本号

详细信息:

mysql>status;

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

mysql Ver 14.14 Distrib 5.1.73, for redhat-linux-gnu (i386) using readline 5.1

Connection id:3

Current database:

Current user:root@localhost

SSL:Not in use

Current pager:stdout

Using outfile:''

Using delimiter:;

Server version:5.1.73 Source distribution

Protocol version:10

Connection:Localhost via UNIX socket

Server characterset:latin1

Db characterset:latin1

Client characterset:latin1

Conn. characterset:latin1

UNIX socket:/var/lib/mysql/mysql.sock

Uptime:24 sec

Threads: 1 Questions: 5 Slow queries: 0 Opens: 15 Flush tables: 1 Open tables: 8 Queries per second avg: 0.208

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

仅查看版本:

+-----------+

| version() |

+-----------+

| 5.1.73 |

+-----------+

mysql>select version();

三、Linux命令行导入导出.sql文件

1.导出数据和表结构

mysqldump -uroot -ppassword database > database.sql

例如:

# /usr/local/mysql/bin/ mysqldump -uroot -pcpt test > t.sql

2.只导出表结构

mysqldump -uroot -ppassword database > database.sql

例如:

# mysqldump -uroot -pcpt -d test > t.sql

3.导入数据库

3.1 建立空数据库

mysql>create database test;

3.2 导入数据库

方法1:

mysql>use test;

mysql>set names utf8;

mysql>source /var/www/html/t.sql

方法2:

mysql -uroot -ppassword database < database.sql

# mysql -uroot -pcpt test < t.sql

导入导出知识可看这里: https://www.cnblogs.com/chenmh/p/5300370.html

四、常用命令

1.查看表结构

mysql>desc table_name;

2.更改表结构

mysql>alter table table_name add column column_name varchar(256) not null default '0' after column_name_another;

mysql>alter table table_name drop column column_name;

mysql>alter table table_name alter column column_name datatype;

3.G格式化显示查询结果

mysql>select * from user order by id desc limit 0,10G

4.mysql连接远程主机

$ mysql -h104.207.154.12 -ubenbirdcc -pimbenbird

5.查看mysql相关变量配置

mysql>show variables like '%Key word%';

6.查看sql语句使用索引的相关情况

mysql>explain ...

7.查看锁表相关命令

mysql>show open tables where in_use > 0; //是否正在使用的表 show open tables from db;

mysql>show processlist; //如果有锁表对业务造成影响,根据上一个命令查询到相关进程,杀掉该进程Id对应的进程即可

mysql>select * from information_schema.innodb_locks; //查看正在上锁的事务

mysql>select * from information_schema.innodb_lock_waits; //查看正在等待上锁的事务

锁表相关知识可看这里:https://blog.csdn.net/enweitech/article/details/52447006

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值