在Linux centos上新安装了mysql后,为mysql添加密码
程序员文章站
2022-08-12 21:10:34
MySQL知识点
一、在Linux centos上新安装了mysql后,为mysql添加密码:
1.安装完成时,可以使用命令service mysqld start开启m...
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,10\G 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
上一篇: 高颜值六核游戏主机 攀升战境S5主机图赏
下一篇: Mysql设置外键约束失效怎么办?